As of 2024-04-10, I intend to remove automatic vertical centering of some basic binary operators for MathML. This was never implemented in other browsers and is not described in any specification.

Bug to remove: https://bugzilla.mozilla.org/show_bug.cgi?id=1890531

To understand better, here is a basic example:

<!DOCTYPE html>
<link
  rel="stylesheet"
  href="https://fred-wang.github.io/MathFonts/STIX/mathfonts.css"; />
<math style="font: 20pt 'STIX Two Math'">
  <mfrac>
    <mn>12</mn>
    <mn>34</mn>
  </mfrac>
  <mo>+</mo>
  <mn>56</mn>
</math>

The fraction bar is placed on the "math axis", which is slightly shifted away from the baseline. For fonts with an OpenType MATH table, this shift is given by the AxisHeight parameter. In practice, math fonts are also designed so that binary operators (e.g. the plus sign) has its vertical center aligned with that math axis too.

Gecko's MathML implementation always adjusts vertical alignment of a few basic binary operators (namely +, =, *, &minus; &le; &ge; and &times;) so that there center is aligned with the math axis. In practice, this is only necessary when non-math fonts are used for MathML rendering but in that you'll get many other rendering issues.

Also for the sake of testing, some WPT tests use special web fonts with intentionally large AxisHeight (and so math axis not aligned with the middle of the binary operators). Having the automatic adjustment makes harder to deal with these tests.

--
You received this message because you are subscribed to the Google Groups 
"dev-platform@mozilla.org" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dev-platform+unsubscr...@mozilla.org.
To view this discussion on the web visit 
https://groups.google.com/a/mozilla.org/d/msgid/dev-platform/ec9d00aa-ea53-4dd0-83f6-2004f0e8d504%40igalia.com.

Reply via email to