MathML in Web Browsers

MathML in Chromium: Project status after one semester
25 July 2019

Igalia team has almost completed the initial implementation.

Screenshot of MathML formulas in Chromium
Evolution of MathML rendering during the project

Let’s review again the status of the initial implementation roadmap with details of the subtasks for the fundamental Stretchy Operators section:

  1. Basic setup
  2. Basic Layout
  3. Operator Dictionary
  4. Stretchy Operators.
    1. Shaping large and stretchy operators using the MathVariants table Support has been imported from WebKit and is doing the job for now. However, the plan is to better integrate it into Chromium’s text layout code and to implement the full support described in MathML core.
    2. Drawing of largeop operators
    3. Stretch logic in mrow-like elements and under and over scripts Experimental support has landed and operators can now stretch but this still need some more testing and polishing.
    4. Using stretchy and symmetric attributes
    5. Simple embellished operators Very partial support has landed.
    6. Roots (msqrt, mroot)
  5. Advanced Style
Screenshot of MathML formula in Igalia's Chromium build
Screenshot of the <x-tex> Custom Element demo in Igalia's Chromium build.

Besides the implementation effort, Igalia has been collaborating with the W3C MathML Refresh Community Group on the MathML Core specification. The group continues to improve MathML compatibility with CSS and HTML5. More web platform tests are being written in order to ensure better interoperability in all implementations!

More news