TeX vs. HTML – Ein Vergleich

Beim Vergleich zweier Dateiformate für Textausgaben sollte man sich hüten, nicht Äpfel mit Birnen zu vergleichen. Schließlich gibt es einen Grund, weshalb es beide Formate gibt. Die Möglichkeit, mit beiden Formaten Textmengen umfangreich zu strukturieren und zu formatieren, eröffnet aber wieder eine Schnittstelle, die man sich genauer ansehen sollte. Ein Versuch.

Allgemeines

Bei beiden Formaten handelt es sich um reine Auszeichnungssprachen (nicht etwa Programmiersprachen!), d.h. mittels Markup können Textbausteinen eine Strukturfunktion oder Formatierung zugewiesen werden. Das können Anweisungen sein wie: Dieses Wort/Abschnitt ist …

… eine Überschrift
… ein Textabsatz
… der Kopf einer Tabelle
… ein von der Dokumentsprache abweichender Sprachbereich
… ein fett formatierter Text
… ein Formelbereich
… usf.

Beiden ist dabei gemein, dass die Strukturierung strikt von der Formatierung getrennt wird – im Unterschied zu einer Textverarbeitung wie LibreOffice Writer oder MS Word, wo man dem WYSIWYG-Prinzip folgt. Textstrukturierungen und -formatierungen sieht man dort in-situ am Bildschirm, während man sowohl bei TeX als auch bei HTML zunächst nicht das erwartete Endergebnis sieht: Hier wird der Quellcode in einem Textdokument vorbereitet. Erst in einem weiteren Schritt kann man sich das Dokument im Endergebnis (TeX -> PDF, HTML -> Browser) ansehen. Diese Trennung zwischen Strukturtext, separaten Formatierungsanweisungen und Endergebnis ist unumgänglich, wenn man den Überblick bei gewaltigen Textmengen (Romane, Abschlussarbeiten) behalten und saubere, fehlerfreie (!) Dokumentformatierung anwenden möchte.

Grundlegende Unterschiede zwischen TeX und HTML

TeX (LaTeX, XeTeX etc.) dient der Erzeugung von hochwertigen Drucksachen, bei denen das Satzlayout aller Zweifel erhaben sein soll. Dazu zählt z.B. auch zweiseitiges Seitenlayout. HTML dient primär der Wiedergabe von Informationen am Bildschirm (im Internet). Mit HTML kann man also ebenso gewaltige Textdokumente verwalten, sollte aber keine Erwartungen an den Textsatz haben (Wortumbrüche, lesefreundliches Layout, Randausgleich etc.). Dafür ist HTML nicht gemacht.

Erlernung der Syntax

Funktionsfähige Dokumente sind mit wenigen Befehlszeilen erstellt. Mit einer Vorlage ist man am schnellsten eingestiegen. Davon ausgehend sind die Grundbefehle für die Strukturierung (was ist Überschrift?, was Textabsatz?) und Formatierung (was soll kursiv?, was soll fett?) in wenigen Minuten erlernt. Die Syntax ist prinzipiell recht einfach, allerdings nicht so einfach wie etwa Markdown.

Erst darauf aufbauend kommen Anweisungen für das Einbinden von Formeln, Tabellen und Bildern sowie Kommandos für individuelle Anpassungen von Struktur und Formatierung. In diesen Teil lassen sich viele Jahre Arbeit mit beiden Formaten investieren, und wird trotzdem nicht alles ausgereizt haben. Darin unterscheidet sich TeX nicht wesentlich von HTML.

Trennung von Dokumentstruktur und Formatierung

Bei TeX wird beides üblicherweise in einer Datei abgelegt (Formatierungsanweisungen in der sog. Präambel am Dokument-Kopf), bei HTML wird strikt getrennt: HTML (Version 5) nimmt nur noch Strukturanweisungen an, während die gesamte Formatierung der Dokument-Einheiten mit CSS umgesetzt wird. CSS liegt in einer separaten Datei, auf die verwiesen wird. Auch bei TeX kann ein beliebiger Umfang der Präambel in eine separate Datei ausgelagert werden.

Layout-Treue

Bei TeX absolut. Beim Kompilieren sieht jedes Dokument genau gleich aus. Bei HTML ist vom Browser abhängig, wie der Quellcode interpretiert wird. Dasselbe HTML-Dokument kann also je nach verwendeten Browser etwas anders aussehen.

Satzlayout

Bei TeX sehr gut. Bei HTML funktional, Worttrennungen gibt es nicht. Manche Browser bieten eine sog. Leseansicht, über die das HTML-Dokument etwas lesefreundlicher dargestellt wird (große Schrift, kürzere Textzeilen).

Anzahl Überschriften

Bei TeX von verwendeter Paketklasse abhängig, üblicherweise nicht mehr als drei (mehr als drei Überschriftenebenen sind lese-unfreundlich). Bei HTML können bis zu sechs Ebenen deklariert werden. Wer mehr braucht, sollte seine Dokumentgliederung überdenken!

Textabsätze

Gewöhnliche Textabsätze werden in TeX mit einer oder mehreren Leerzeilen getrennt. Eine gesonderte Markierung ist nicht notwendig. Bei HTML muss jeder Textabsatz mit dem Paragraph-Tag eingeschlossen werden (<p>Absatz</p>). Gegenüber TeX ist das selbstverständlich umständlicher.

Toleranz Leerzeichen und Gliederung mit Tabs

Sowohl bei TeX als auch bei HTML werden versehentlich eingegebene Leerzeichen ignoriert (anders als bei einer Textverarbeitung wie Writer oder Word!). Bei beiden Formaten können Leerzeichen und Tabs beliebig eingesetzt werden, um im Quellcode eine optische Struktur bzw. Übersicht zu imitieren.

Quellcode

TeX-Quellcode ist normalerweise übersichtlicher als HTML-Quellcode. Das hängt aber auch mit der Muße zusammen, inwiefern man Tabs, Leerzeichen und -zeilen zur Gliederung des Quellcodes einsetzt.

Metadaten

Können bei beiden Formaten frei vergeben werden (Titel, Autor, Stichwörter etc.). Sie erscheinen dann im PDF (Endformat von TeX) bzw. werden bei HTML-Seiten von Webcrawlern (Suchmaschinen) ausgewertet.

Unicode

Wird prinzipiell von beiden Formaten unterstützt. Die Eingabe von besonderen Zeichen (Dreifachpfeile etc.) über Unicode-Code ist bei TeX kompliziert und vom verwendeten Compiler abhängig. Bei HTML kann das gewünschte Zeichen direkt über den Unicode-Platz eingegeben werden.

Typografie

Mit TeX kann alles Erdenkliche umgesetzt werden (Ligaturen, Ziffernsets, optischer Randausgleich etc.), HTML muss hier meistens passen. Wer sich an guter Typografie erfreut, sollte von HTML nichts erwarten.

Kommentare

Quellcode-Kommentare werden bei TeX sehr einfach über ein Prozent-Zeichen eingeleitet. Bei HTML werden Kommentare in ein- und ausführenden Tags aus mehreren Zeichen eingefasst, was viel umständlicher ist. Allerdings ermöglichen entsprechende Texteditoren in beiden Fällen, Textblöcke mit einem Tastenkürzel als Kommentar zu kennzeichnen.

Fußnoten

Bei TeX harmonisch am Seitenende, wenn gewünscht auch an einer beliebigen Dokument-Stelle zusammengefasst aufgeführt. Formatierungen der Fußnoten-Zeichen (Ziffern, Zeichen) nach Belieben. HTML: besser nicht. Wenn doch, dann erscheinen HTML-Fußnoten gesammelt am Seitenende.

Automatische Verzeichnisse

Automatische Verzeichnisse (Inhalts-, Abbildungs-, Tabellen- Literaturverzeichnis) sind in TeX mit einfachen Kommandos erstellt. Unter HTML gibt es Möglichkeiten, mithilfe von Skripts (Java) dasselbe zu verwirklichen. Ist aber ungleich umständlicher. Wer eine umfangreiche Literaturverwaltung nutzen möchte (Inline-Zitate, Literaturverzeichnis etc.), sollte auf TeX setzen.

Inline-Formatierungen

Die Anweisungen für Inline-Formatierungen (Fett, Kursiv, Hochstellung, Tiefstellung etc.) funktionieren bei beiden Formaten ähnlich: Wörter oder Textbausteine werden von geschweiften Klammern (TeX) oder Tags (HTML) eingefasst. In beiden Fällen ist das fehleranfällig. Eine öffnende/schließende Anweisung vergessen, und das Dokument funktioniert nicht mehr. Dann beginnt die Fehlersuche. Professionelle Editoren erzeugen automatisch öffnende und schließende Anweisungen.

Kennzeichnung von Quelltext

Muss im Dokument Quelltext gekennzeichnet werden (im Ausgabeformat dann meist in einer Monospace-Schrift dargestellt), kann man das sowohl bei TeX (z.B. verb-Umgebung) als auch HTML (code-Tags) tun. HTML bietet darüber hinaus noch Möglichkeiten, um Quellcode zu differenzieren (samp, code, kdb = Tasten, var, pre).

Bilder

Grafikdateien werden bei beiden Formaten über einfache Anweisungen eingebunden. Größenangaben, Position und Bildunterschriften lassen sich einfach anweisen. Nur bei TeX sollte man automatisch nummerierte Abbildungen erwarten, und nur bei HTML kann man bequemerweise SVG-Grafiken direkt einbinden.

Die Grafikdateien selbst bleiben in einem externen Ordner und werden nicht im Quellcode gespeichert.

Tabellen

In beiden Fällen kompliziert und unübersichtlich, trotz zahlreicher Formatierungsmöglichkeiten. Tabellendaten bereitet man am besten in einer Tabellenkalkulation (Gnumeric, LO Calc, Excel) vor, aus der die Daten anschließend im TeX- oder HTML-Format exportiert werden.

Formelsatz

Bei TeX ist der Formelsatz vorzüglich und sehr mächtig. In HTML können umfangreiche Formeln z.B. über MathJax umgesetzt werden.

PDF-Export

Bei TeX ist heute PDF das Standard-Ausgabeformat nach dem Kompilieren (früher auch DVI). Wer HTML als PDF braucht, kann dies über jeden Browser oder PDF-Drucker erzeugen.

Konvertierung

Über Parser wie Pandoc können TeX und HTML ineinander und viele andere Textformate konvertiert werden.

Zeichenelemente

In TeX möglich, aber kompliziert (TikZ, pgfplots etc.). In HTML können bestimmte Zeichenelemente (Buttons, Formulare) sehr einfach erstellt werden.

Spezial-Editoren

Für beide Formate gibt es Editoren, die speziell auf die Anforderungen von TeX oder HTML zugeschnitten sind. Es reicht aber auch jeder x-beliebige Texteditor.

Sofort loslegen?

Ja, wenn man sich mit dem Quellcode begnügt. Der kann mit jedem beliebigen Texteditor angelegt werden. Will man allerdings das Endergebnis sehen, benötigt man bei TeX zwingend eine sog. TeX-Distribution (Sammlung von Paketen und Compilern), die aus dem Quellcode ein PDF zusammensetzt.

Für HTML reicht es, das Dokument in einem beliebigen Browser zu öffnen. Da ein Browser üblicherweise auf jedem Betriebssystem vorinstalliert ist, geht dieser Punkt an HTML.