Podpora MathML v prohlížečích a editorech

14. května 2004

Po zveřejnění mého předchozího článku o MathML se řada čtenářů dotazovala, jak je to s podporou tohoto značkovacího jazyka v různých programech a jeho reálnou použitelností. V tomto článku vám tedy předkládám průřez aktuální situací – žádná sláva to ale není.

Tak jako většina technologií založených na XML, nezůstává ani MathML určeno pouze pro internet a s ním spojené prohlížeče. MathML je možné zpracovávat v nepřeberném množství matematických programů. Programy a aplikace, kterými se budeme zabývat, rozdělím do několika kategorií:

  • Internetové prohlížeče (Microsoft Internet Explorer, Mozilla, Opera…)
  • Plug-iny do prohlížečů (zásuvné moduly)
  • Editory MathML (matematické programy jejichž výstupem může být právě MathML)

Někomu se může zdát takové rozdělení poněkud divné a je pravda, že nelze každý program takto rozškatulkovat, ale alespoň trochu nám to usnadní práci.

Podpora v prohlížečích

Podpora MathML v prohlížečích je nadmíru nedostatečná (ostatně stejně jako podpora mnoha jiných technologií). Nejlépe si vede Amaya (testovací prohlížeč W3C), která umožňuje zobrazení i editaci vzorce. Poměrně slušně si stojí Mozilla, která MathML podporuje, leč s nějakými těmi chybkami. Internet Explorer ani Opera nepodporují MathML vůbec, i když tato „neuspokojivá“ situace by se měla postupem času změnit k lepšímu. Bohužel, co můžeme očekávat od nejrozšířenějšího prohlížeče (MSIE6) za zázraky, když je tři roky starý? Microsoft sám popisuje řešení podpory MathML v odpovědi na dopisy od uživatelů a doporučuje plug-iny, o kterých bude řeč později. Co se týče Opery, podpora asi vůbec neexistuje, alespoň na webových stránkách Opery nenajdete jedinou zmínku o MathML.

Plug-iny do prohlížečů

Prohlížeče samotné je možné doplnit o plug-iny (podpůrné programy), které umožní prostřednictvím prohlížeče vzorec korektně zobrazit. Asi nejznámější a nejkvalitnější je TechExplorer HyperMedia Browser, původně od IBM, nyní vyvíjen firmou Integre, který umožňuje zobrazit MathML a Tex v Microsoft Internet Exploreru a Netscape. Zobrazení probíhá pomocí elementu embed. Pomocí MathML by zápis vzorce X2 vypadal následovně:

<embed type=“text/mathml“ mmldata=“
<math>
  <semantics>
    <mrow>
      <msup>
        <mi>X</mi>
        <mn>2</mn>
      </msup>
    </mrow>
   <annotation encoding=’MathType-MTEF‘>
  </annotation>
  </semantics>
</math>“>

Pomocí TeXu by zápis stejného vzorce vypadal takto:

<embed type=“application/x-techexplorer“ textdata=“$$X^2 $$“ >

Jinou možností může být MathPlayer, určený pouze pro Microsoft Internet Explorer 5.5 a vyšší. Velkým plusem pro tento plug-in je cena – zdarma. Umožňuje zobrazení MathML 2.0. Jenže ani tento plug-in nepodporuje „přímé“ zobrazení MathML, kdy v souboru HTML, XHTML nebo XML je část kódu MathML ohraničená elementem math. V HTML dokumentu je nutné doplnit element html

< html xmlns:m=“http://www.w3.org/1998/Math/MathML“>

…do hlavičky vložit objekt…

<object id=“MathPlayer“ classid=“clsid:32F66A20-7614-11D4-BD11-00104BD3F987″
codebase=“http://www.dessci.com/dl/mathplayer.cab“
</object>
<?import namespace=“m“ implementatio=“#MathPlayer“ >

…a pak už jen zdrojový kód MathML, ve kterém je nutné všechny značky doplnit o jmennou prostoru m (<m:mn>9</m:mn>). Jak vidno, jednoduchému MathML se mílovými kroky vzdalujeme.

Do třetice přidám plug-in od HP, prezentovaný na stránkách W3C, HP EzMath, jehož použití je také značně „nadpřirozené“. Součástí archivního balíčku (asi 137 kB) je plug-in, použitelný pro Microsoft Internet Eplorer i Mozillu, a editor EzMat, který je velmi jednoduchý a práce s ním není nijak obtížná. Výsledkem tohoto editoru je opět element embed a vzorec je prezentován jako text atributu „alt“.

<embed type=“text/ezmath“ pluginspage=“http://www.w3.org/People/Raggett/EzMath“ alt=“X^2″>

Příbuznost EzMathu s MathML je dost vzdálená, editor sice umožňuje export do MathML, ale už nezajišťuje podporu v prohlížeči.

EzMath Editor

Editory MathML

MathML je už podporováno ve většině velkých matematických systémů. V systému MATEMATICA je podpora zajištěna od verze 4.0, tato podpora znamená možnost importu MathML i exportu. Rovněž Maple přistoupil k podpoře MathML ve verzi 7. Tyto systémy umožňují výpočty na mnohem vyšší úrovni než třeba Excel, jsou určeny profesionálům a tomu odpovídá i jejich vysoká cena. K dispozici nejsou ani zkušební verze aktuálních vydání.

Velmi povedeným editorem rovnic je MathType 5, který je navíc k dispozici zdarma po dobu třiceti dní. Verze 3 je součástí sady Microsoft Office, kde vystupuje jako Equation Editor (ve verzi 4 jde už o MathType). V Excelu a Wordu umožňuje Equation Editor export do GIFu nebo do VML (Vector Markup Language). MathType 5 umožňuje vytvořit snad jakýkoli vzorec a ten následně uložit ve formátu Encapsulated PostScript, GIF a Windows Metafile. Dále je možný překlad do TeXu a MathML (verze 1.0 i 2.0). Tento překlad probíhá velice jednoduše – kopírováním. Vzorec v MathType kopírujeme a následně vkládáme do HTML editoru (už jako MathML nebo jako TeX). Tato možnost se nastavuje v nabídce Preferences | Translators. Důležitá je možnost exportu do GIFu, která je v současné době často užívaná. V nastavení exportu do GIFu máme možnosti barvy pozadí, průhlednosti a rozlišení. Vzorec v GIFu, který byl vytvořen v MathType, je možné zpětně otevřít a editovat. Obrázky z jiných programů není možné otevřít.

Uživatelské rozhraní je intuitivní a velmi se podobá Equation Editoru. Možná je až příliš přímočaré.

MathType 5
MathType 5 (plná velikost, cca 10 kB)

Nešikovné je, že MathType nepodporuje opětovné vložení kódu MathML a jeho přeložení do původního vzorce (to samé platí o TeXu). Nedostatky postihly také pole formátování. MathType umožňuje barvit a formátovat (dle významu funkce, proměnná a podobně), styl však není možno exportovat do MathML. To plyne nejspíš z používání obecného formátu XML, ale stejně by mohla existovat možnost exportu stylů do dokumentů HTML v podobě CSS. Je třeba dodat, že MathType slouží pouze k tvorbě a úpravě vzorců, ne k vyhodnocování.

Po nainstalování MathType 5 dojde k automatickému propojení se sadou Microsoft Office, kde se zobrazí nový panel nástrojů určený pro tvorbu vzorců:

Nástrojová lišta

S její pomocí je možné exportovat dokument do XHTML+MathML nebo do HTML+GIF. V nabídce Vložit | Objekt se objeví nová položka s názvem MathType 5. Sice zde stále zůstává Equation Editor 3.0, avšak po jeho spuštění dojde k otevření MathType.

Velmi dobrým editorem je také WebEQ, který umožňuje vytvářet MathML, jak vizuálně, tak přímo pomocí zdrojového kódu. Součástí balíku je i překladač z WebTeXu do MathML. WebWQ je sada Java appletů, která již dříve zajišťovala zobrazení vzorců na webu pomocí syntaxe vycházející z TeXu.

Dalším již méně atraktivním editorem je MathML Equation Editor od již zmíněné společnosti Integre, který je zdarma ve verzi 1.1.1. Práce s ním již vůbec není tak jednoduchá jako s MathType. Výhodou tohoto editoru je možnost otevírání a ukládání souborů MathML (.mml). Kromě MathML je ještě zajištěna podpora Zed (přípona .zed).

MathML Equation Editor

Sami vidíte, jaká podpora MathML skutečně je. Na prohlížeče se spoléhat nedá, plug-iny odvádějí pozornost úplně jinam a editory MathML jsou sice na vysoké úrovni, ale k čemu jsou skvělé výsledky, když je není kde prezentovat…

Starší komentáře ke článku

Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.

Předchozí článek kletr
Další článek fotbalovenoviny.com
Štítky: Články

Mohlo by vás také zajímat

Nejnovější

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *