# What's the use of multiple vertical variants for math operators of a OpenType math font?

The only fonts I know that have more than one "large" version of the math operators are Asana Math and Cambria Math. The other ones just have one glyph for the \textstyle version and other for the \displaystyle version.

This causes problems. It seems that similar problems also happen with Cambria; their \displaystyle summation operator is too large.

So, what's the use of having them? Does LuaTeX uses them in some way? Does MS Word? Is it even possible to access them from within LuaTeX? (This technique does not seem to work for them - or in fact for most math operators).

-
it seems that some people prefer an extra large size of sums, integrals, et al., if the expression following it is, say, a fraction. this was an explicit request to the designers of cambria. it is clearly not the preference of the publications on which knuth based his design of computer modern, nor of most contemporary math journal publishers. i'm not sure in which environments the larger form is preferred, but they do exist. –  barbara beeton Oct 5 '11 at 13:25
I remember a conference talk (maybe EuroTeX 1999) where someone from Russia (maybe Sasha Berdnikov) claimed that Russian typography does indeed prefer larger integrals or maybe larger displaystyle operators in general, so at least 3 sizes would be needed. At that time having additional sizes was far out of scope, but nowadays it may become feasible. –  Ulrik Vieth Mar 14 '12 at 23:44

MS implementation seems to select larger operators in display style based on the size of the sub equation next to the operator. Knuth's original algorithm (as implemented in various TeX engines) does not do this and luatex does not support it either. I'm not sure if such behaviour is desired, but ASFAIK no one requested it in luatex.

In luatex, however, you can change the value of DisplayOperatorMinHeight "on fly" which would allow using the different size of all big operators inside a formula, e.g. (in ConTeXt):

\setupbodyfont[asana]

\starttext
\startformula
\sum \int \prod
\stopformula
\startformula
\Umathoperatorsize\displaystyle = 1em
\sum \int \prod
\stopformula
\startformula
\sum \int \prod
\stopformula
\stoptext


The change is local, the third formula will be the same as first.

(in LaTeX you have to use \luatexUmathoperatorsize because the primitives are renamed there)

-
Indeed! But can I access them directly, like this: tex.stackexchange.com/questions/9596/… ? –  Mateus Araújo Oct 5 '11 at 6:46
@MateusAraújo: this does not seem to work in math mode (may be some mathcode magic is needed), but in text mode \fontchar{sumbig3} works (provided you have set Asana Math as text font). –  Khaled Hosny Oct 5 '11 at 7:03
Didn't knew I could load a math font as text font. But I wanted to be able to load the characters from the math font to be able to fix the problem I linked in the question character by character, since I think it'll repeat itself with some frequency. –  Mateus Araújo Oct 5 '11 at 13:53
\setmainfont{Asana Math} just works, after all it is a regular OpenType font wit extra math layout stuff. –  Khaled Hosny Oct 5 '11 at 15:32
Here is an attempt for math mode \def\namedop#1{\luatexUmathchar"1"0 \directlua{tex.sprint(fonts.otf.name_to_slot("#1") or 0)}} however it does not work as intended since name_to_slot uses the current font but math mode has no notion of current font; it is always the text font, so unless Asana Math is also the text font you will be asking for glyph from a totally different font. –  Khaled Hosny Oct 5 '11 at 15:56