MathJax

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

MathJax 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 TeXu

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

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.

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top