Web-Mathematik (MathJax / KaTeX)

Um LaTeX-Mathematik auf einer Webseite anzuzeigen, läuft TeX nicht im Browser — du verwendest einen JavaScript-Mathematik-Renderer. Die beiden Standards sind MathJax (am vollständigsten) und KaTeX (am schnellsten). Beide akzeptieren LaTeX-Mathematiksyntax. Diese Seite vergleicht sie.

MathJax

MathJax (v3) rendert LaTeX-Mathematik — außerdem MathML und AsciiMath — nach HTML/CSS, SVG und MathML. Die MathML-Ausgabe ist wertvoll für Screenreader-Zugänglichkeit. Es hat die breiteste Kompatibilität mit LaTeX-Mathematik (amsmath, eigene Makros, sogar \label/\eqref), und die Neufassung in v3 hat den alten Geschwindigkeitsabstand stark verkleinert. Konfiguriert wird vor dem Laden des Skripts über ein window.MathJax-Objekt (Delimiter, Pakete).

terminal
<script>
  window.MathJax = { tex: { inlineMath: [["$","$"]], displayMath: [["$$","$$"]] } };
</script>
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>

KaTeX

KaTeX (von Khan Academy) ist der schnelle, schlanke Renderer — synchron, ohne Reflow, klein. Es unterstützt eine große Teilmenge der LaTeX-Mathematik, aber nicht alles (insbesondere keine Gleichungsverweise mit \label/\eqref). Ideal, wenn viele Formeln vorkommen und Geschwindigkeit zählt. Lade CSS und JS sowie die Auto-Render-Erweiterung (renderMathInElement).

terminal
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex/dist/katex.min.css">
<script defer src="https://cdn.jsdelivr.net/npm/katex/dist/katex.min.js"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex/dist/contrib/auto-render.min.js"
        onload="renderMathInElement(document.body);"></script>

Konfiguration, Kompatibilität und Auswahl

Delimiter: inline $...$ oder \(...\); abgesetzt $$...$$ oder \[...\]. Wähle, welche aktiv sind (MathJax über sein Konfigurationsobjekt, KaTeX über delimiters von renderMathInElement). Kompatibilität: Beide akzeptieren nur LaTeX-Mathematik (keine ganzen Dokumente), und keiner startet eine echte TeX-Engine — sie implementieren mathematischen Satz in JS nach. MathJax deckt mehr Befehle ab. Wenn ein ganzes LaTeX-Dokument möglichst originalgetreu ins Web soll, verwende einen Konverter (tex4ht/LaTeXML) — siehe „LaTeX → HTML“.

  • Kompatibilität, MathML (Zugänglichkeit), \eqref → MathJax.
  • Geschwindigkeit, geringe Größe, viele Formeln → KaTeX.
  • Ganzes Dokument im Web → Konverter (siehe „LaTeX → HTML“).