MathJax
Author
Albert FloresMathJax je javascriptová knihovna pro zobrazování matematických výrazů a rovnic ve webových prohlížečích za pomoci LaTeXu a MathML. Jedná se o multiplatformní a otevřený software, je uvolněna pod licencí Apache license.
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
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. +more 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í. +more 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. +more 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
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. +more3, 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.
Kompatibilita s publikačními systémy
MathJax je možné doinstalovat do řady populárních publikačních systémů, například MediaWiki, Drupalu, WordPressu a Joomla. +more.
Podpora MathML
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.