
“Typesetting math.”
That was the little chyron in Chrome’s lower left corner while loading one of our articles the other day.
Typesetting math. Used to be, in the days of print, in the days when Internet distribution of math-heavy research was done, pretty much, by PDF only that researchers wrote their articles in TEX or LATEX, and that was it. The TEX / LATEX -set PDF went up on the Ar(x)iv, and later got peer reviewed and published.
But, have you ever tried to read an A4/letter-sized PDF on your phone? (I don’t recommend it…) In the post-iPhone/Android age, we’re seeing that most people are finding and browsing research (the first time they find it, at least) on their phones. And this means, if you want people to actually be able to read it, you need the articles to be mobile-optimized. And that means, in a format that can be re-sized and re-flowed according to dynamically-selected cascading style sheets (CSS). Basically, you need to be able to reformat the article for any screen.
And for math (or any math-heavy discipline like physics or economics) that means you need a way to accurately typeset and represent equations.
Luckily, there’s a technology for that. It’s called MathJax, managed by the American Mathematical Society and created by the AMS, Design Science, and SIAM, and it works via the JavaScript active in most browsers. Wikipedia says, “MathJax downloads with web page content, scans the page content for equation markup, and typesets the math. Thus, MathJax requires no installation of software or extra fonts on the reader’s system. This allows MathJax to run in any browser with JavaScript support, including mobile devices.”
And while the directions for rendering the equations can come from LATEX, to implement this properly, we have to re-format the article—we need to typeset and HTML-code the text while implementing the MathJax for the equations, all of which is done by our Production department.
So, just a little peek behind the curtain of how we’re now getting math to render properly for the screen, any screen.
I am not sure, if you ever happen to visit this site:
http://texfolio.org/gallery.html
where screenshots of heavy math content being processed and various digital output formats created — PDF, XML+MathML, HTML+MathML — and rendered using various technologies available around, are shown. Of course, MathML is rendered in the browser using MathJax, although, the same can be rendered by browsers like Firefox without any auxiliary javascript program like MathJax. Since many of the mainstream browsers barring Firefox (and partially by Safari and Opera), support native MathML rendering, MathJax is an essential item for rendering math in the web.