Nothing Special   »   [go: up one dir, main page]

Re: Alignment and Embellished Operators

Frédéric,

This is a very interesting case.  I reread MathML 2's description and it
says nothing about the horizontal position of the accent/limit.  It does say
that the arrows should stretch to the size of the base ("mtext"), but that's
pretty much it.  The pictures are centered, or at least centered relative to
the italic slant of the chars.  So relative to the MathML 2 spec, both ways
of rendering the example (as is or with arrows over the "mtext") meet the
spec.

MathML 3 says a little more since it says that the default is to center the
accent/limit over the base.  It does not say anything about using the base
of the embellished operator for centering (it only talks about embellished
ops in terms of setting accentunder/over), so I believe that, as the spec
stands, how you render it now is correct for MathML and centering the base
of the multiscripts would be wrong.

Of course, implicit in your email is that you believe that there should be a
way to align the base of the embellished ops, and that perhaps that should
be the default.  Aligning the base of the embellished operator isn't just
useful for centering, but also is potentially useful for left and right
alignment.  Hence, it really is an orthogonal concept.  That means that *if
the spec is modified*, the best modification would be to add another
attribute ("useOp" = true/false or some such).  I think this is relatively
obscure case and would prefer not to add it to MathML 3, but I am speaking
for myself, not the MathML 3 WG.  Note that without adding an option, we can
clarify the language in the spec to say that this does (or does not) apply
the the base of an embellished operator (depending on which people think is
most common).

It would be good to get your feedback and others as to how important this
is.

Thanks,

Neil Soiffer
Senior Scientist
Design Science, Inc.
www.dessci.com
~ Makers of MathType, MathFlow, MathPlayer, MathDaisy, WebEQ, Equation
Editor ~



2010/4/9 Frédéric WANG <fred.wang@free.fr>

> Hi all,
>
> I would like to mention an issue about embellished operators that was
> reported ten years ago in Bugzilla. Consider the files given as attachment.
> In the XHTML page, two embellished operators are used as scripts of a
> <underover/>. The screenshot shows a sample rendering: the two arrows are
> correctly stretched to the size of the base of the <underover/>. However,
> the center of the children are aligned and, because of the size added by the
> embellishments, the arrows do not cover the base of the <underover/>. I
> suppose you agree that the expected rendering would be to align the arrows
> with the base, using some kind of automatic positioning for the scripts?
>
> Now, MathML3 introduces a new attribute "align" for munderover (and
> under/over), that can only takes three values: "left" | "right" | "center".
> In the example I give, none of these values will give the expected result.
> It seems to me that either a new default value "auto" should be added or say
> that automatic alignment of embellished operator overrides the value of the
> align attribute. I think the latter is better: auto would be redundant with
> center in all the other cases, I don't see why one would refuse to align the
> stretched symbol with the base and (for munderover) this will allow to apply
> automatic positioning to only one of the two scripts.
>
> Frédéric Wang
>

Received on Friday, 9 April 2010 20:32:15 UTC