MathJax – Wikipedia

before-content-x4

Browserübergreifende JavaScript-Bibliothek, die mathematische Gleichungen in Webbrowsern anzeigt

MathJax ist eine browserübergreifende JavaScript-Bibliothek, die mathematische Notation in Webbrowsern anzeigt und dabei MathML-, LaTeX- und ASCIIMathML-Markup verwendet.[2][3][4] MathJax wird als Open-Source-Software unter der Apache-Lizenz veröffentlicht.

Das MathJax-Projekt begann 2009 als Nachfolger einer früheren JavaScript-Mathematik-Formatierungsbibliothek, jsMath,[5] und wird von der American Mathematical Society verwaltet.[6] Das Projekt wurde von der American Mathematical Society, Design Science und der Society for Industrial and Applied Mathematics gegründet und wird von zahlreichen Sponsoren wie dem American Institute of Physics und Stack Exchange unterstützt.[7]

MathJax wird von Websites wie arXiv,[8]Elseviers ScienceDirect,[9]MathSciNet,[10]n-Kategorie Café, MathOverflow, Wikipedia (im Backend),[11][12]Scholarpedia, Project Euclid-Zeitschriften,[13]IEEEXplore,[14]Publons, Coursera und das Allrussische Mathematische Portal.[15]

Merkmale[edit]

MathJax wird als Teil einer Webseite heruntergeladen, durchsucht die Seite nach mathematischem Markup und setzt die mathematischen Informationen entsprechend. Somit erfordert MathJax keine Installation von Software oder zusätzlichen Schriftarten auf dem System des Lesers. Dadurch kann MathJax in jedem Browser mit JavaScript-Unterstützung ausgeführt werden, einschließlich mobiler Geräte.[16]

MathJax kann Mathematik anzeigen, indem es eine Kombination aus HTML und CSS verwendet oder die native MathML-Unterstützung des Browsers verwendet, sofern verfügbar. Die genaue Methode, die MathJax verwendet, um Mathematik zu setzen, wird durch die Fähigkeiten des Browsers des Benutzers, die auf dem System des Benutzers verfügbaren Schriftarten und die Konfigurationseinstellungen bestimmt. MathJax v2.0-beta führte das SVG-Rendering ein.[17]

Im Fall von HTML- und CSS-Schriftsatz maximiert MathJax die mathematische Anzeigequalität, indem es mathematische Schriftarten verwendet, falls verfügbar, und indem es auf Bilder für ältere Browser zurückgreift. Für neuere Browser, die Webfonts unterstützen, bietet MathJax einen umfassenden Satz von Webfonts, die MathJax bei Bedarf herunterlädt. Wenn der Browser keine Webfonts unterstützt, überprüft MathJax, ob gültige Fonts auf dem System des Benutzers verfügbar sind. Wenn dies nicht funktioniert, stellt MathJax Bilder aller benötigten Symbole bereit.[clarification needed] MathJax kann so konfiguriert werden, dass Webfonts, lokale Fonts und Bildfonts aktiviert oder deaktiviert werden.

MathJax verwendet die STIX-Schriftarten, um Mathematik in Webseiten einzubinden. Die Installation der Schriftarten auf dem lokalen Computer verbessert die Satzgeschwindigkeit von MathJax.[18]

MathJax kann mathematische Notationen anzeigen, die in LaTeX- oder MathML-Markup geschrieben wurden. Da MathJax nur für die mathematische Anzeige gedacht ist, während LaTeX eine Dokumentlayoutsprache ist, unterstützt MathJax nur die Teilmenge von LaTeX, die zur Beschreibung der mathematischen Notation verwendet wird.[16]

MathJax unterstützt auch mathematische Zugänglichkeit, indem es MathML über seine API für unterstützende Technologiesoftware bereitstellt, sowie die grundlegende WAI-ARIA-“Rolle” und ältere “altext”-Attribute.[19]

Die MathJax-Architektur soll das Hinzufügen von Eingabesprachen und Anzeigemethoden in Zukunft über dynamisch geladene Module unterstützen. MathJax enthält auch eine JavaScript-API zum Aufzählen und Interagieren mit mathematischen Instanzen auf einer Seite.

Browser-Kompatibilität[edit]

MathJax rendert Mathematik in den meisten gängigen Browsern, darunter Internet Explorer 6+, Firefox 3+, Google Chrome 0.3+, Safari 2.0+, Opera 9.5+, iPhone/iPad Safari und der Android-Browser. Einige ältere Browserversionen unterstützen keine Webfonts (mit dem @font-face CSS-Konstrukt), daher müssen sie den MathJax-Bildfontmodus verwenden. Die Browser-Kompatibilitätsliste ist auf der offiziellen Website verfügbar.[20]

Plugin-Unterstützung[edit]

MathJax kann problemlos zu vielen gängigen Webplattformen hinzugefügt werden.[21]

Node.js[edit]

MathJax kann in NodeJS seit Version 3 verwendet werden;[22] für Version 2 die MathJax-Knotenbibliothek[23] bietet NodeJS-Kompatibilität.

Kompatibilität des Gleichungseditors[edit]

Jede MathJax-Gleichung, die in einem unterstützten Browser angezeigt wird, kann im MathML- oder LaTeX-Format über das Untermenü “Mathematik anzeigen als” kopiert werden, wenn mit der rechten Maustaste oder bei gedrückter Strg-Taste darauf geklickt wird. Dann kann es in jeden Gleichungseditor eingefügt werden, der MathML oder LaTeX unterstützt, wie Mathematica, MathType, MathMagic, Firemath zur Wiederverwendung.[24]

Gleichungen, die im MathML- oder LaTeX-Format von einem beliebigen Gleichungseditor von Drittanbietern generiert wurden, können auf MathJax-fähigen Webseiten verwendet werden.

TeX-Unterstützung[edit]

MathJax repliziert die mathematischen Umgebungsbefehle von LaTeX. AMS-LaTeX-Mathematikbefehle werden über Erweiterungen unterstützt. MathJax unterstützt auch TeX-Makros und verschiedene Formatierungen wie color und underline.[25]

MathML-Unterstützung[edit]

MathJax hat in seiner Beta-2-Version teilweise Unterstützung für MathML 2.0 und einige MathML 3.0-Konstrukte hinzugefügt. MathJax unterstützt Präsentations-MathML und bietet ab Version 2.2 experimentelle Unterstützung für Inhalts-MathML.[26]

CDN-Server[edit]

Die MathJax-Site hat ein Content Delivery Network (CDN) bereitgestellt, in dem das für die Funktion von MathJax benötigte JavaScript vom Browser zur Laufzeit vom CDN geladen werden kann. Dies vereinfacht die Installation und stellt sicher, dass immer die neueste Version der Bibliothek verwendet wird. Im Laufe der Zeit ist die Nutzung des Servers von 1,3 TB pro Monat Datenverkehr im Jahr 2011 auf 70 TB pro Monat im Jahr 2017 gestiegen. Aufgrund der steigenden Kosten für das Hosten des Servers wurde der Haupt-CDN-Server Ende April 2017 abgeschaltet. Alternative CDN-Server von Drittanbietern stehen zur Verfügung.[27]

Siehe auch[edit]

Verweise[edit]

  1. ^ “MathJax v3.1.2”. MathJax. 2020-09-12.
  2. ^ “MathJax: Rich Math Display von LaTeX und MathML”. 17. November 2015.
  3. ^ “MathJax AsciiMath-Unterstützung”. Archiviert von das Original am 2018-03-23. Abgerufen 2013-04-07.
  4. ^ Cuellar, Herbst; Topping, Paul (Juni 2013). Mathews, Bob (Hrsg.). “Was Sie über den Mathe-Stack wissen müssen”. XML London 2013: 63–68. mach:10.14337/XMLLondon13.Cuellar01. ISBN 978-0-9926471-0-0.
  5. ^ Hayes, Brian (2009), “Mathematik im Web schreiben: Das Web wäre eine tolle Tafel, wenn wir nur eine Gleichung kritzeln könnten”, Amerikanischer Wissenschaftler, 92 (2): 98, doi:10.1511/2009.77.98.
  6. ^ „AMS wird geschäftsführender Gesellschafter des MathJax-Konsortiums“. 2013-03-20.
  7. ^ “MathJax-Sponsoring”.
  8. ^ “arXiv.org-Hilfe – Was ist MathJax?”.
  9. ^ “MathJax auf ScienceDirect”. Archiviert von das Original am 2014-08-26. Abgerufen 2014-08-24.
  10. ^ “MathSciNet-Neuigkeiten”.
  11. ^ Schubotz, Moritz; Wicke, Gabriel (2014-01-01). „Mathoid: Robustes, skalierbares, schnelles und zugängliches Math-Rendering für Wikipedia“. Intelligente Computermathematik. Skript zur Vorlesung Informatik. 8543. S. 224–235. arXiv:1404.6179. mach:10.1007/978-3-319-08434-3_17. ISBN 978-3-319-08434-3. S2CID 16123116.
  12. ^ “Erweiterung:Mathe – MediaWiki”. www.mediawiki.org. Abgerufen 2017-04-06.
  13. ^ “Was ist MathJax?”.
  14. ^ “IEEE Xplore-Hilfe”. ieeexplore.ieee.org. Abgerufen 2021-08-05.
  15. ^ “Allrussisches mathematisches Portal”.
  16. ^ ein B Cervone, Davide (2012), “Math Jax: Eine Plattform für Mathematik im Web” (PDF), Mitteilungen der American Mathematical Society, 59 (2): 312–316, doi:10.1090/noti794
  17. ^ “MathJax v2.0-Beta jetzt auf CDN verfügbar”. 11. Februar 2012.
  18. ^ Hilfe zu MathJax-Schriftarten Archiviert 28.07.2012 an der Wayback Machine, abgerufen am 14.08.2012.
  19. ^ “MathJax: Zugänglichkeit”.
  20. ^ “MathJax: Browserkompatibilität”. Archiviert von das Original am 2015-04-06. Abgerufen 2017-06-05.
  21. ^ “Verwendung von MathJax in beliebten Webplattformen”. Archiviert von das Original am 2017-08-31. Abgerufen 2017-06-05.
  22. ^ “Was ist neu in MathJax 3”.
  23. ^ “mathjax-knoten”.
  24. ^ “Mathematik kopieren und einfügen”.
  25. ^ “MathJax: Unterstützte LaTeX-Befehle”. Archiviert von das Original am 2018-12-16. Abgerufen 2017-06-05.
  26. ^ “MathJax MathML-Unterstützung — MathJax 2.3 Dokumentation”. Archiviert von das Original am 2018-12-15. Abgerufen 2014-02-14.
  27. ^ “MathJax CDN wird am 30. April 2017 heruntergefahren”. MathJax. 31. März 2017.

Externe Links[edit]

after-content-x4