MathJax je javascriptová knihovna pro zobrazování matematických výrazů a rovnic ve webových prohlížečích za pomoci LaTeXu a MathML.[1][2][3] Jedná se o multiplatformní a otevřený software, je uvolněna pod licencí Apache license.

MathJax
Logo
VývojářAmerická matematická společnost
Aktuální verze3.2.2 (8. června 2022)
Operační systémLinux
multiplatformní software
FreeBSD
Vyvíjeno vJavaScript
Typ softwarumatematický software
LicenceApache License, Version 2.0
Webwww.mathjax.org
Některá data mohou pocházet z datové položky.

MathJax se začal vyvíjet v roce 2009 jako následník starší javascriptové knihovny pro zobrazování matematických vzorců, jsMathu, a jeho vývoj je ve správě společnosti Design Science. Kromě ní vývoj podporují American Mathematical Society, Society for Industrial and Applied Mathematics, American Physical Society, Elsevier a Project Euclid.

MathJax je používán na řadě webových portálů, mezi které patří MathSciNet, GitHub, n-category cafe, MathOverflow nebo Scholarpedia.

Princip

editovat

MathJax je stažen zároveň s obsahem webu, prohledá stránku, zda obsahuje nějaké vzorce a postará se o zobrazení matematiky. MathJax tedy nepotřebuje žádné dodatečné instalace písem nebo softwaru na straně čtenáře. Jediné, co potřebuje, je podpora Javascriptu v prohlížeči, což mu umožňuje běžet i na mobilních zařízeních.

MathJax může k zobrazení matematiky využít kombinací možností HTML a kaskádových stylů nebo využít podporu MathML v prohlížeči. Jakým způsobem bude matematika zobrazována, to závisí na možnostech prohlížeče, na písmech dostupných v čtenářově počítači a na nastavení. Od verze v2.0-beta je navíc zahrnuta možnost zobrazování pomocí SVG.

V případě zobrazování pomocí HTML a CSS se MathJax snaží použít dostupná matematická písma, případně se u starších prohlížečů uchýlí k obrázkům. Pro nové prohlížeče, které podporují webová písma, MathJax stáhne přes web potřebná písma z předpřipraveného souboru. Pro prohlížeče nepodporující stahování písem MathJax zkusí najít použitelná písma v čtenářově systému. Pokud se ani to nepodaří, MathJax stáhne v potřebných případech obrázky patřičných symbolů. Chování je navíc konfigurovatelné, je možné zapnout či vypnout stahování písem, použití místních písem i použití obrázkového písma.

MathJax umí zobrazit matematické výrazy napsané podle pravidel LaTeXu nebo MathML. Vzhledem k tomu, že MathJax je určený pouze pro zobrazování matematických výrazů, zatímco LaTeX je určený pro sazbu celých dokumentů, nejsou podporovány všechny LaTeXové konstrukce – pouze ty, které sází matematiku.

Kompatibilita s prohlížeči

editovat

V nejpoužívanějších prohlížečích funguje MathJax dobře. Příklady takových prohlížečů jsou: Internet Explorer 6, Mozilla Firefox 3, Google Chrome 0.3, Safari 2.0 nebo Opera 9.5. Některé starší verze zmíněných prohlížečů fungují, ale nepodporují webová písma, takže se MathJax uchýlí k obrázkům.

Plný výpis kompatibility s prohlížeči je k disposici na stránkách MathJaxu.[4]

Kompatibilita s publikačními systémy

editovat

MathJax je možné doinstalovat do řady populárních publikačních systémů, například MediaWiki, Drupalu, WordPressu a Joomla!.[5]

Podpora TeXu

editovat

MathJax umí zpracovat příkazy matematického prostředí LaTeXu. Navíc jsou skrze rozšíření podporovány i příkazy AMS-LaTeXu. MathJax také podporuje TeXová makra a některé formátovací příkazy jako \color (barva) nebo \underline (podtržení).[6]

Podpora MathML

editovat

Ve verzi beta 2 přidal MathJax částečnou podporu pro MathML 2.0 (a některé konstrukce MathML 3.0), přičemž podporuje pouze prezentační MathML.

Reference

editovat

V tomto článku byl použit překlad textu z článku MathJax na anglické Wikipedii.

  1. MathJax: Rich Math display from LaTeX and MathML [online]. 17 November 2015. Dostupné online. 
  2. MathJax AsciiMath support [online]. [cit. 2013-04-07]. Dostupné v archivu pořízeném z originálu dne 2018-03-23. 
  3. CUELLAR, Autumn; TOPPING, Paul. What you need to know about the Maths Stack. Redakce Mathews Bob. XML London 2013. June 2013, s. 63–68. Dostupné online. ISBN 978-0-9926471-0-0. DOI 10.14337/XMLLondon13.Cuellar01. 
  4. MathJax: Browser Compatibility [online]. [cit. 2012-05-26]. Dostupné v archivu pořízeném dne 2013-08-08. 
  5. Using MathJax in popular web platforms [online]. [cit. 2012-05-26]. Dostupné v archivu pořízeném dne 2011-07-17. 
  6. MathJax: Supported LaTeX Commands [online]. [cit. 2012-05-26]. Dostupné v archivu pořízeném dne 2010-09-27.