Math on the Web

An earlier answer (« converting to HTML ») addresses the issue of converting existing (La)TeX documents for viewing on the Web as HTML.

Better font availability and the support for new Web standards means that there are now several possibilities for good rendering of mathematics on the web.

  • Font technologies: Direct representation of mathematics in

browsers was hampered by the limited range of symbols
in the fonts that were available. However, all modern operating
systems now include OpenType fonts with large collections of symbols
and the availablity of web font technology means that page authors
may specify fonts without relying on the reader having pre-installed
suitable fonts.
The available OpenType math fonts are discussed in [[FAQ-otf-maths|OpenType fonts]]
  • Direct interpretaton of a subset of LaTeX math markup by Javascript.

The speed of modern javaScript engines means that it is feasible to
serve web pages that contain fragments of TeX markup that is converted
in the reader's browser. Two main systems are in common use:
  1. MathJax is the most widely used

JavaScript Library for rendering mathematics.  It supports several
input syntaxes includedin a subset of LaTeX math syntax, and may be
configured to render using several output forms, MathML, or SVG or
(most commonly) HTML+CSS. While normally used as a JavaScript
Library running in the reader's browser it is also possible (using
its [[|Node.js]] interface) to do the conversion
in advance,and serve the generated HTML pages.
- [[|KaTeX]] Is a newer alternative
JavasScript Library, its main aim is to be simpler and faster than
MathJax. It has fewer input or output forms and covers a smaller
range of LaTeX constructs, but is a viable alternative for pages
that do not require the additional features of MathJax.
  • Conversion of (La)TeX source to XML is already available (through

TeX4ht at least), and work continues in that arena.  The
alternative, authoring in XML (thus producing documents that are
immediately Web-friendly, if not ready) and using (La)TeX to typeset
is also well advanced.  One useful technique is [//transforming// the
XML to LaTeX](FAQ-SGML2TeX), using an XSLT stylesheet or code for
an XML library, and then simply using LaTeX; alternatively, one may
[[FAQ-readML|typeset direct from the XML source]].
  • Direct

representation of mathematics MathML is a standard for representing
maths on the Web; Browser support for MathML is provided by
''firefox'', and ''safari'' and other browsers using te same underlying
html rendering libraries.  At the current time it is not supported
by Chrome or Edge browsers.  MathML in the page may be rendered by
MathJax, with an output identical to its TeX r.endering. MathJax
uses a variant of MathML as its intermediate format)
The [[|MathJax project's site]] also
allows you to download your own copy and install it on one of //your//
servers.  ''MathJax'' is open source software.
  • An approach different from (La)TeX conversion is taken by

the [[|//GELLMU// Project]].
Its //article// XML document type, which has a markup vocabulary
close to LaTeX that can be edited using LaTeX-like markup
(even though it is not LaTeX --- so far), comes with translators
that make both PDF (via //pdflatex//) and
XHTML+MathML.  Such an approach avoids the inherent
limitations of the "traditional" (La)TeX translation processes,
which have traps that can be sprung by unfettered use of (La)TeX
  • Graphics

SVG is a standard for graphics representation on the web.
While the natural use is for converting existing figures,
representations of formulas are also possible.
  • An interesting alternative is

[[|MathTeX]], which sits
on your server as a CGI script, and you use it to include
your TeX, in your HTML, as if it were an image:

</code>html <img src= »/cgi-bin/mathtex.cgi?f(x)=intl`imits <>`__{-infty}^xe^{-t^2}dt »> </code> (Mathtex supersedes the author’s earlier mimetex.)

Source: Math on the Web