AurigaDoc Workshop: Kapitel 1
In diesem Kapitel werden wir eine einfache erste Datei erstellen, die wir mit AurigaDoc in HTML, MHTML (multiple HMTL, also mehrere HTML-Dateien) und PDF umwandeln. Dazu müssen wir aber erst einmal eine Bug in AurigaDoc 1.3 beseitigen. Damit sind wir auch schon bei einem kleinen Nachteil von Aurigadoc: Das Tool kommt mit wenig Dokumentation um die Ecke; dafür bekommt man beim Support schnelle Antworten.
Bug in AurigaDoc beheben
In der Datei "c:toolsaurigadocxslxml2mhtml.xsl" gibt es in der Zeile 112 einen Fehler. Diese Zeile muss ausgetauscht werden. Bitte sucht die Zeile
<xsl:comment> </xsl:comment>
und ändert sie in
<xsl:comment>dummy</xsl:comment>
Die Lösung zu diesem Bug ist auch im Forum von AurigaDoc beschrieben. Danach können wir den Test aus den Vorbereitungen nicht nur mit dem Parameter "-html" sondern auch mit "-mhtml" durchführen.
Unsere erste kleine AurigaDoc-Datei
Unser Beispiel werde ich im Forum sowohl im Text- als auch im XML-Format hinterlegen, damit Ihr es herunterladen könnt bzw. mit Syntaxhervorhebung (engl. syntax highlighting) ansehen könnt.
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> <document> <document-meta-info> <title>Titel (nur auf der Startseite)</title> <attribute name="Autor"><a href="mailto:[email protected]">Claus van Beek</a></attribute> <attribute name="Attribut">Attribute können frei definiert werden</attribute> </document-meta-info> <document-formatting-info> <stylesheet url="style.css" /> <left-margin>5pt</left-margin> <right-margin>5pt</right-margin> <top-margin>50pt</top-margin> <bottom-margin>25pt</bottom-margin> <show-section-numbers>no</show-section-numbers> <generate-section-numbers>yes</generate-section-numbers> <header-height>85pt</header-height> <footer-height>40pt</footer-height> </document-formatting-info> <document-header> <h1>Überschrift für alle Seiten</h1> </document-header> <!-- ##### Inhaltsverzeichnis + Sektionen ##### --> <document-body> <table-of-content> <link href="#sektion_vorwort">Vorwort</link> </table-of-content> <section name="sektion_vorwort" label="Vorwort"> <p>Ganz tolles Vorwort!</p> </section> </document-body> <document-footer> Stand: Donnerstag, 12. Mai 2005 um 18:22:17 </document-footer> </document>
Die <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?> Zeile stellt den deutschen Sprachsatz ein. Die XML-Datei benötigt
- <document-meta-info>: Hier stehen Grundinformationen wie Autor, E-Mail-Adresse, etc. Ihr könnt neue Punkte dazu definieren.
- <document-formatting-info>: Die lasse ich immer in der Standardeinstellung. Ich mache die Formatierungen immer über die CSS-Datei. Diese wird von HMTL komplett übernommen, bei PDF sind einzelne Unterschiede zu sehen.
- <document-header>, <document-footer>: Wird im PDF auf jeder Seite dargestellt. Beim PDF bietet sich im Fuß/Footer die Seitenzahl (<page-number />) an.
- <table-of-content>: Hier wird das Inhaltsverzeichnis definiert. Diese müssen dann mit den Namen der "<section>" übereinstimmen.
- <section name="sektion_vorwort" label="Vorwort">: Die Sektion bekommt einen Namen und ein Label. Der Name ist beim Konvertieren in HTML der spätere Dateiname, während das Label die Kapitelüberschrift ist.
Das oben dargestellte Dokument kann man als "test.xml" abspeichern. Ich speichere meine XML-Dokumente unter "c:toolsaurigadocbin" ab. Man kann natürlich auch mit absoluten oder relativen Pfaden arbeiten (siehe Vorbereitungen) Ich habe das Beispiel bei mir in HTML und PDF umgewandelt. Welche Befehle dazu verwendet werden, lernen wir im nächsten Abschnitt.
Beispiele für die Konvertierung
Ob wir XML in eine oder mehrere HTML-Dateien verwandeln ist AurigaDoc egal. Manchmal machen allerdings PDF-Dokumente Probleme. Deswegen ist es sinnvoll regelmäßig die Konvertierungen zu testen. Die folgenden Beispiele gehen davon aus, dass unter "c:toolsaurigadocbin" die XML-Datei "test.xml" liegt und man Schreibrechte in diesem Verzeichnis hat. Außerdem muss man vor der ersten Konvertierung in MHTML einen Unterordner "test_mhtml" anlegen. Alle Namen können natürlich beliebig gewählt werden. Damit keine Fehlermeldung kommt, muss man das "style.css" aus dem Ordner "c:toolsaurigadocsamples" nach "c:toolsaurigadocbin" kopieren.
aurigadoc -html -XML test.xml -OUT test.htm
wandelt "test.xml" in "test.htm" um.
aurigadoc -pdf -XML test.xml -OUT test.pdf
wandelt "test.xml" in "test.pdf" um. Und last but not least erstellt
aurigadoc -mhtml -XML test.xml -OUT test_mhtml/
im Verzeichnis "test_mhtml" mehrere HTML-Dateien. Der Ordner muss allerdings vorher angelegt werden.
Meine persönlichen Favoriten sind die Konvertierungen nach MHTML, CHM und PDF, wobei ich auf ein perfektes PDF keinen Wert mehr lege, da ich dieses nur mit Tabellen und nicht mit DIV-Containern realisiert bekomme. Auch Bilder kann man im PDF nicht ordentlich einbinden. Kapitel 2 wird erst kommen, wenn das im FOP bereinigt ist.