LaTeX to MathML

LaTeX input:

Math font:

Pretty print:

Display style:

MathML source code:

<math display="block">
</math>

What is this?

This website allows you to convert LaTeX math into MathML (or, more specifically, MathML Core), which is then rendered by your browser. For example, try this input:

p\big(z;f(\theta)\big) =
\sum_{i=1}^K \gamma_i\,\mathcal{N}\big(z; f_i(\theta), \Sigma_i\big),
\quad\text{where }\sum_{i=1}^K \gamma_i = 1

Recent versions of all the major browsers support MathML Core, so you should be able to see the rendered math. For example: x2.

The conversion runs entirely in your browser, using WebAssembly and a tiny bit of JavaScript. Your LaTeX math is never sent to a server. The compiled WebAssembly is under 100kB; less than many images on the web. Additionally, this webpage needs a patched version of the Latin Modern Math font, to render primes correctly on Chromium-based browsers. The font file for that is 375kB.

Not all features of LaTeX math are supported. Some of them simply because they haven’t been implemented yet; others because they are very difficult to translate into MathML.

If you need multiline equations, you can use the environments \begin{aligned}, \begin{align}, or \begin{align*}. For example:

\begin{aligned}
      x &= 1 \\
  y + z &= 2
\end{aligned}