Matematika a WWW

Roman Plch

Nástup osobních počítačů a počítačových sítí výrazně ovlivnil i publikování odborných textů. Několik století používanou formu papírového dokumentu v současnosti doplňuje nová elektronická forma dokumentu s různými formáty pro jeho uložení (Postscript, PDF, HTML a další) na různé typy elektronických médií.

Elektronická forma přidává dokumentu nové rozměry (hypertextové reference, multimediální prvky, vyhledávání), což ve spojení s novými počítačovými technologiemi znamená především změnu ve zpřístupnění a multifunkčním využití odborného dokumentu.

Dnes si všimnene zejména současných možností prezentace matematických textů na Webu a pokusíme se o výhled do budoucnosti.

Matematický text a současný Web

Současný jazyk HTML není vůči matematikům ani trochu přívětivý. Podpora pro výrobu složitějších vzorců je veškerá žádná. K dispozici jsou v podstatě jen párové značky pro index a exponent (<SUB> a <SUP>). Navíc HTML má pouze konstantní sadu značek a tak si je uživatel nemůže podle potřeby dodefinovat. Na druhé straně, Web je nejpopulárnější prostředek na uveřejnění dokumentů a materiálů. Z tohoto důvodu budeme věnovat pozornost různým přístupům zobrazování matematických textů na Webu.

Řešení založené na HTML

Matematické výrazy ve formě obrázků

Nejrozšířenějším přístupem v současnosti je překlad matematických výrazů, které se nedají v HTML popsat, do obrázků (nejčastěji formát GIF a PNG) a ty zobrazit jako součást dokumentu. Tento přístup má ale řadu nevýhod:

K nejčastěji používaným programům patří LaTeX2HTML, TeX4ht a systémy počítačové algebry. Blíže se všimneme práce programu LaTeX2HTML a exportu do HTML v programu Maple.

LaTeX2HTML

LaTeX2HTML je automatický převodník dokumentu v LateXu (verze 2.09 nebo 2e) do formátu HTML. Jeho autorem je Nikos Drakos. Převodník rozdělí dokument na více částí a automaticky vloží odkazy (linky) mezi tyto části, vytvoří obsah, index, převádí vzorce a vložené obrázky do formátu GIF (PNG) a vkládá je do dokumentu. Zkonvertované obrázky však mohou být umístěny i mimo tento dokument, který pak na místě obrázku bude obsahovat pouze odkaz. Při překladu se automaticky generují navigační panely, které mohou být umístěny na každé zkonvertované stránce a usnaňovat tak orientaci v dokumentu. Program je napsaný v Perlu (verze alespoň 4.036) a potřebuje ke správné činnosti LATEX, dvips, Ghostscript, knihovnu programů netpbm a program giftrans. Volá se příkazem latex2html s parametrem jmeno_souboru.tex. Program vytvoří adresář se jménem jmeno_souboru a do něj uloží všechny části přetransformovaného dokumentu (neurčí-li uživatel jinak). Vstupní dokument se nazývá jmeno_souboru.html a další nodeXX.html, v adresáři se dále nacházejí soubory .gif.

Současná verze programu LaTeX2HTML zpracovává matematické výrazy a formule v podstatě dvěma hlavními způsoby:

Výběr nejvhodnější metody závisí na obsahu. LaTeX2HTML volí způsob transformace podle
  1. požadované verze HTML
  2. zda je použito rozšíření math
  3. zda je použita volba no_math
Podrobný manuál k programu najdeme na http://www.latex2html.org/.

Maple

Pro vytváření matematického textu v systému počítačové algebry Maple je třeba znát syntaxi příkazů systému nebo je možno využít přichystaných nabídek matematických symbolů a konstrukcí. Následná konverze do jazyka HTML je pak jednoduchá. Volbou File - Export As - HTML transformujeme zápisník zapisnik.mws na zapisnik.html, při exportu zvolíme, zda chceme výstup s rámci nebo bez rámců a adresář, do kterého se budou ukládat obrázky (defaultně images, obrázky se pak jmenují zapisniknn.gif). Pokud zápisník obsahuje animace, konvertor vytvoří pro každou z animací animovaný gif (ukázka). Protože však Maple ani ve své poslední verzi neumožňuje plnohodnotnou sazbu matematických textů, jedná se spíše o možnost doplňkovou.

Zobrazování matematických výrazů zebezpečené applety a pluginy

Matematické formule vstupují v TEXu nebo v jiném kódování a jejich zobrazování je zabezpečené pomocí pluginů a appletů. Nevýhodou tohoto přístupu je často závislost na konkrétním prohlížeči či platformě. Nutné instalovat podpůrné programy a často je třeba dlouho čekat na načtení dokumentu.

IBM techexplorer

Velmi zajímavé pluginy pro Internet Explorer a pro Netscape Navigator na nejrozšířenější platformy. Umí přímo interpretovat podmnožinu TEXových (LATEXových) příkazů a pomocí pluginu zobrazit tyto dokumenty na Webu. Techexplorer je v současné době dostupný ve dvou verzích: volně šířená je tzv. Introductory Editon, komerčně Professional Edition.

WebEQ

Jedná se o sadu Java-apletů, které umožňují do stránek vkládat vzorce zapsané v jednoduché syntaxi, vycházející z typografického systému TEX. Prohlížeč Math Viewer je volně dostupný na http://www.mathtype.com, pro vytváření vzorců potřebujeme komerční program WebEQ, z výše uvedené stránky je možné stáhnout 30-ti denní testovací verzi. Tento program umožňuje tvorbu i tzv. dynamické matematiky, ukázky najdeme na http://www.mathtype.com/en/products/webeq/interactive/ .

Řešení bez HTML - Web jen jako zprostředkovatel

V tomto případě Web slouží jen jako zprostředkovatel zpřístupnění odborného dokumentu v některém ze standardních elektronických formátů. Nejčastěji jsou používané formáty PS (Postscript), DVI (Device Independent) a PDF (Portable Document Format). Výhodou tohoto přístupu je kontrola autora nad konečným vzhledem dokumentu, což při použití jazyka HTML zdaleka není možné. Nevýhodou je velikost přenášených souborů, nutnost instalace prohlížeče pro každý z formátů a v některých případech i problémy s nekompatibilitou formátů.

Jako nejčastěji používaný se v současnosti jeví formát PDF. Prohlížeč Acrobat Reader (http://www.adobe.com/products/acrobat/readstep2.html) je volně přístupný pro všechny platformy. Možnosti formátu PDF a jeho vytváření přesahují rámec této přednášky, všimneme si pouze možnosti vytváření PDF souborů u nás na sekci. První možností je vytvoření PDF souboru přímo z TEXu pomocí volně šířeného programu pdfTEX. Zdrojový text zpracujeme programem pdftex, pdflatex nebo pdfcslatex, výstupem je místo souboru DVI přímo PDF soubor. Více informací o programu pdfTEX najdeme např. na http://www.cstug.cz/pdftex/index.html. Druhou možností je cesta přes DVI a Postscript. V tomto případě můžeme použít program ps2pdf (založený na Ghostscriptu). program se spouští se na počítači bart příkazem ps2pdf psfile pdffile. Při této cestě je třeba při překladu pomocí dvips použít postscriptových fontů (implicitní nastavení), příkazem dvips soubor.dvi.

O vytváření PDF souborů na platformě Windows pojednává článek v časopisu CHIP, číslo 9/02. Jeho upravenou verzi nejdete zde.

Kromě toho sekce zakoupila 10 instalací komerčního produktu Adobe Acrobat pro kompletní zpracování PDF souboru (pouze pro MS Windows).

Matematický text a budoucí Web

Konzorcium w3c (http://www.w3.org/ zodpovědné za vývoj standardů pro Web se po dlouhých úvahách rozhodlo uvolnit ohraničenost jazyka HTML. Přijetí XML (Extensible Markup Language) znamená pro uživatele především možnost přidávání vlastních značek podle zvoleného DTD (Document Type Definition). XML je zjednodušená verze SGML optimalizovaná pro použití na Internetu. (SGML- Standard Generalized Markup Language - syntaktický metajazyk pro definic tříd dokumentů).

Přijetím XML se otevřel nový prostor pro odborné dokumenty na Webu. MathML (Mathematical Markup Language, http://www.w3.org/Math/ je XML slovníkem (DTD) pro popis matematiky (struktury formulí i prezentačních forem). Důraz je kladen nejen na prezentaci dokumentu (tedy na jeho zobrazení na Webu), ale i na multifunkční využití obsahu matematických výrazů (vyhledávání, indexace, propojení se systémy počítačové algebry, ...). Vysvětleme si na následujícím jednoduchém příkladu jak MathML funguje. Uvažujme rovnici

\begin{displaymath}
x^2+4x+4=0.
\end{displaymath}

Tuto popišme nejdříve pomocí prezentačních značek (tagů). Ty jsou v podstatě analogií TEXu s tím rozdílem, že uživatel je nucen přesně specifikovat co je operátor, relace, proměnná či číslo. Prezentační tagy obvykle začínají písmenem m, pak následuje písmeno o pro operátor, n pro číslo atd.
     <mrow>
       <mrow>
             <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo>
                 <mrow>
                   <mn>4</mn>
                   <mo>&#8290;</mo>
                   <mi>x</mi>
                 </mrow>
         <mo>+</mo>
         <mn>4</mn>
       </mrow>
         <mo>=</mo>
         <mn>0</mn>
     </mrow>

Pokud Váš pohlížeč podporuje MathML, vidíte zde výsledek: x 2 + 4 x + 4

Obsahové tagy vyjadřují sémantiku výrazu pomocí prostředků dané matematické oblasti (teorie množin, lineární algebra, ...).
         <apply>
             <plus/>
             <apply>
                 <power/>
                 <ci>x</ci>
                 <cn>2</cn>
             </apply>
             <apply>
                 <times/>
                 <cn>4</cn>
                 <ci>x</ci>
             </apply>
            <cn>4</cn>
         </apply>
Rozhodnutí, zda použít obsahové nebo prezentační tagy bude záležet na účelu využití dokumentu. Z uvedené ukázky je také vidět, že dokumenty MathML nejsou určeny k ručnímu editování.

Podpora MathML v současnosti

Metscape 7 a Mozilla již podporují jistou podmnožinu MathMl tagů, pro Internet Explorer je třeba si stáhnout volně šiřitelný MathPlayer. Postupem času se však stane zobrazování matematických výrazů na Webu stejně přirozené a jednoduché, jako je to v současnoti s textem bez nich (viz. též první konference věnovaná problematice MathML http://www.mathmlconference.org/).

Všimněme si teď některých softwarových produktů, které podporují MathML.

About this document ...

Matematika a WWW

This document was generated using the LaTeX2HTML translator Version 99.2beta8 (1.42)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 1 -no_navigation -noaddress -html_version 3.2,latin2 matnaweb.tex

The translation was initiated by Roman Plch on 2000-11-27