The math tables created for the math facility in Word 2007 and other Microsoft Office applications are now officially part of the OpenType standard ISO/IEC CD 14496-22 3rd edition. See Section 6.3.6 MATH. You can download a copy of the whole standard from here. We always hoped that the tables would become part of the official OpenType standard so as to encourage people to create math fonts with the power and elegance of the Cambria Math font which ships with Windows. I’ve been sending the math-table specification to anyone who asked for several years now, but it’s considerably better to have the standard available publically. A bonus is that the prose has been improved and enhanced. Enjoy!
The OpenType math tables were designed to enable programs to reproduce the elegant math typography of TeX. In addition they provide special features such as data to kern the spacing between the base of a subscript or superscript and the script itself. The tables were included in Cambria Math when it first shipped in 2007.
They are also included in a version of the STIX fonts known as XITS – OpenType MATH enhanced STIX fonts. The STIX fonts are based on the Times Roman typeface. XITS is a right-to-left spelling of STIX and the XITS author hopes to extend XITS to support right-to-left math. Right-to-left math can be represented in MathML 3.0 and is described in this post. In particular, right-to-left support implies inclusion of mirrored variants (OpenType rtlm tag) for many operators such as integrals and summations as well as glyphs for the Arabic math alphabetics (see the Unicode Standard’s U+1EE00..U+1EEFF).
Another exciting development is that Firefox now displays MathML using some of the OpenType math tables. Check out this link to see how your browser fares in a MathML torture test compared to TeX. Firefox looks really very good. Internet Explorer uses LineServices, the component that Office apps call to layout math zones with the help of the tables to achieve TeX typographic quality. But since IE doesn’t currently enable the LineServices math handler, the math it displays in the MathML torture test doesn’t resemble math. Hopefully that will change.