Login
Newsletter
Werbung

Do, 6. August 2015, 15:00

Mit LaTeX zum E-Book

latex2rtf

latex2rtf wurde von Christine Römer in der TeXnischen Komödie 1/2015 vorgestellt und hat einen anderen Ansatz. Das Open-Source-Programm konvertiert das LaTeX-Dokument nicht nach HTML, sondern nach RTF, welches dann beispielsweise mit LibreOffice, OpenOffice oder MS Office angeschaut werden kann. Mittels Calibre lässt sich das RTF aber auch in ein EPUB wandeln.

Die aktuellste Version von latex2rtf ist 2.3.8 vom 16. Juni 2014. Die allgemeine Benutzung ist sehr einfach:

$ ./latex2rtf -P ../Programme/latex2rtf-2.3.8/cfg/ -M12 beispiel.tex

Die Angabe von -P ../Programme/latex2rtf-2.3.8/cfg/ ist dabei notwendig gewesen, weil das Programm nicht systemweit installiert wurde und die Config-Dateien sonst nicht gefunden werden. Die Option -M12 wandelt alle mathematischen Formeln in Bilder um, sodass diese später auch im EPUB dargestellt werden können.

Neben zahlreichen Warnungen für unbekannte Befehle bricht die Konvertierung mit

beispiel.tex:350  '*{num}{cols}' not supported.make: *** [latexrtf] Speicherzugriffsfehler (Speicherauszug erstellt)

ab. Grund ist, dass die Spaltenwiederholung mittels *{6}{c} in der Tabelle nicht verstanden wird. Die Tabelle wurde daher auskommentiert.

Damit die BibTeX-Bibliography korrekt erkannt wird, muss diese zuvor manuell erstellt werden.

Wandlung in RTF

Wenn man durch das erstellte RTF-Dokument blättert, fällt zuerst auf, dass kein Inhaltsverzeichnis erstellt wird. Weiter fällt auf, dass alle Makros, die mit \newcommand* definiert wurden, nicht formatiert sind. Die Parameter der Makros werden zwar ausgegeben, aber der weitere Text fehlt. Aus dem Grund wurde die befehle.tex entsprechend angepasst. Unbekannte Umgebungen werden mit einem »Sorry. Ignored \begin{...} … \end{...}« im Dokument ausgewiesen. Der Inhalt der Umgebung wird dann nicht ausgegeben.

Unbekannte Umgebungen werden ignoriert

Dominik Wagenführ

Unbekannte Umgebungen werden ignoriert

Fehlerhafte Auszeichnung von ganzen Abschnitten als Überschrift

Dominik Wagenführ

Fehlerhafte Auszeichnung von ganzen Abschnitten als Überschrift

Tabellen werden dargestellt, aber unglücklich breit formatiert

Dominik Wagenführ

Tabellen werden dargestellt, aber unglücklich breit formatiert

Ein weiteres Problem bei der Konvertierung entsteht, wenn hinter einer Überschrift eine \index-Angabe folgt. Dann wird der nachfolgende Absatz noch als Überschrift ausgewiesen, was seltsam aussieht.

Textformatierung und Schriftgrößen werden alle korrekt dargestellt. Auflistungen und Aufzählungen werden korrekt dargestellt, wobei bei Auflistungen nur Punkte für alle Ebenen benutzt werden.

Tabellen werden auch dargestellt, auch wenn die Spaltenbreite mitunter nicht optimal gewählt wird. Bei \multicolumn wird die Spaltendefinition ignoriert und auch die Definition eigener Spalten funktioniert nicht.

Formeln sind sehr fein gezeichnet und haben dadurch eine schlechte Qualität

Dominik Wagenführ

Formeln sind sehr fein gezeichnet und haben dadurch eine schlechte Qualität

JPG-Bilder werden sehr klein dargestellt. Andere Formate sind größer

Dominik Wagenführ

JPG-Bilder werden sehr klein dargestellt. Andere Formate sind größer

Die mathematischen Formeln werden durch die Option -M12 als Bilder dargestellt, die Qualität ist aber nicht sehr gut. Die Linien sind sehr fein, sodass im Dokument bei »falscher« Zoomstufe ein Minus nicht mehr sichtbar ist.

Die Grafiken werden korrekt eingebunden, auch das PDF und EPS werden in ein RTF-verständliches Format konvertiert. Probleme mit der Größendarstellung gibt es bei JPG-Bildern, die sehr klein abgebildet werden.

Fußnoten werden dargestellt, landen aber im Gegensatz zu den HTML-Konvertierungen am Ende der jeweiligen Seite. Literaturverweise sind ebenfalls möglich und auch das Literaturverzeichnis wird korrekt eingefügt. Das Tabellen- und Abbildungsverzeichnis bleibt wie das Inhaltsverzeichnis leider leer. Ebenso werden Farben und Zähler nicht unterstützt.

Zum Schluss fällt etwas Seltsames auf: Viele Abschnitte sind zentriert dargestellt, obwohl sie nicht besonders im LaTeX-Code ausgerichtet sind. Hier scheint irgendeine Formatierung in der Datei eine Auswirkung auf das ganze Dokument zu haben.

Wandlung in EPUB

Analog zur Wandlung von HTML nach EPUB kann man auch das RTF mit Calibre nach EPUB wandeln. Auf der Konsole mit

$ ebook-convert beispiel.rtf beispiel.epub --no-default-epub-cover

Da LaTeX2RTF das einzige Programm ist, was nicht über HTML geht, können die folgenden Probleme ggf. auch daran liegen, dass der Calibre-Konverter für RTF nicht so ausgereift ist wie für HTML.

Das erste große Problem mit dem EPUB ist das fehlende Inhaltsverzeichnis. Das heißt, nicht nur wird am Anfang keines ausgegeben, sondern das gesamte EPUB hat von Calibre keines erhalten. Somit kann man in einem großen Dokument ausschließlich willkürlich zu bestimmten Seiten springen.

Bei den Textformatierungen geht leider sehr viel verloren, sodass sowohl Sans-Serif als auch Monotype und Kapitälchen nicht angezeigt werden, was im RTF noch funktionierte. Dies könnte allerdings auch an den gewählten Schriftarten Arial und Courier liegen, die auf dem Testgerät nicht installiert sind.

Die internen Verweise im Dokument, die im RTF noch zu sehen waren, fehlen nun völlig, sodass man im EPUB nicht mehr navigieren kann. Auch die Fußnoten gehen komplett verloren.

Die meisten Tabellen sehen in Ordnung aus, einige werden aber komplett fehlerhaft dargestellt, sodass man den Sinn der Tabelle nicht mehr erkennen kann.

Die mathematischen Formeln sehen als Grafiken zwar gut aus, skalieren auf dem E-Book-Reader aber leider nicht, sodass sie über den Rand laufen und somit dann nicht mehr komplett zu erkennen sind.

Tabellen sind teilweise gar nicht mehr als solche erkenntlich

Dominik Wagenführ

Tabellen sind teilweise gar nicht mehr als solche erkenntlich

Die Formeln und andere Bilder skalieren nicht korrekt

Dominik Wagenführ

Die Formeln und andere Bilder skalieren nicht korrekt

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung