next up previous contents
Nächste Seite: 8.4.3 Präsentation Aufwärts: 8.4 Verschiedene Ausprägungen Vorherige Seite: 8.4.1 Allgemeine Bestimmmung von   Inhalt

8.4.2 Skript

Das komplette Skript sollte sowohl zu XHTML-Seiten als auch in eine druckbare Form mittels PDF aufbereitet werden. Die wesentlichen Verarbeitungsschritte dafür wurden in den vorhergehenden Kapiteln zur XHTML-Generierung dargestellt. Für die Verarbeitung vieler Inhalte bleiben die in XSL-FO sehr ähnlich, nur dass die speziellen XSL-FO-Elemente statt der XHTML-Tags gesetzt werden müssen und über einzelne ausprägungsspezifische Unterstützungen entschieden werden muss. Ein wesentlicher Unterschied liegt in dem Hinzuziehen von Layoutinformationen. In XHTML können diese entweder direkt in den Tags angegeben oder mittels CSS auch extern festgelegt werden. Dazu wird einfach ein Link zu der entsprechenden CSS-Datei in die XHTML-Ausgabedateien integriert. Eine Änderung des Layouts auf der Basis von CSS-Informationen kann somit leicht von außen vorgenommen werden. Damit besteht die Möglichkeit mit spezifischen Designs die Ausgabe ohne Veränderungen an den Transformationen mit verschiedenem Layout zu versehen. In XSL-FO werden die Layoutinformationen mittels Attributen den einzelnen Elementen hinzugefügt. Um einige allgemeine Informationen für alle Elemente zu verwenden und eine spätere Anpassung zu erleichtern, können die layoutspezifischen Attribute in von XSLT zur Verfügung gestellten attribute-set-Elementen definiert und an den verwendeten Stellen integriert werden.

Code-Beispiel 12:
Die Verwendung von attribute-set's ermöglicht die Einstellung von Attributwerten, die an verschiedenen Stellen wieder benutzt werden. Hier wird ein Rahmen definiert, der nur aus dem unteren Strich des Rechtecks besteht. Diese Attribute werden für den standard-header, der der Region-before entspricht, benutzt, um eine Linie zur Abgrenzung der restlichen Seite zu ziehen. Es müssen dabei mehrere Werte gesetzt werden, da ansonsten für die nicht gesetzten Werte die Standardwerte gelten und damit dort Linien gezeichnet werden würden.
<xsl:attribute-set name="underline-border">

<xsl:attribute name="border-before-style">solid</xsl:attribute>
<xsl:attribute name="border-after-style">solid</xsl:attribute>
<xsl:attribute name="border-start-style">solid</xsl:attribute>
<xsl:attribute name="border-end-style">solid</xsl:attribute>
<xsl:attribute name="border-before-width">0mm</xsl:attribute>
<xsl:attribute name="border-after-width">.1mm</xsl:attribute>
<xsl:attribute name="border-start-width">0mm</xsl:attribute>
<xsl:attribute name="border-end-width">0mm</xsl:attribute>

</xsl:attribute-set>
Derartige Attribute lassen sich für alle möglichen Formatierungsanweisungen festlegen und in eine externe Datei auslagern. Diese ist dann einfach zu verändern oder zu ersetzen. Eine Problematik stellt die Integration von MathML in XSL-FO dar. Durch die Rückführung von XSL-FO auf TeX beispielsweise mit PassiveTex wird die Bearbeitung der mathematischen Formeln in TeX vorgenommen. Damit wird eine hohe Qualität der Formeldarstellung erlangt. Der XSL Formatter von Antenna House unterstützt das Einbinden von MathML als Grafik oder direkt und benötigt den MathML Player zum Rendern. Auf die gleiche Art können auch SVG-Grafiken integriert werden, die mit einem SVG Viewer gerendert werden. SVG wird auch von FOP mit unterstützt und stellt nach dem aktuellen Stand die bessere Unterstützung dar. Daher ist noch nicht zur direkten Integration von MathML zu raten, sondern der Umweg über Grafiken vorzunehmen, indem MathML als SVG oder GIF gerendert und in XSL-FO eingebunden wird. Für die weitere Realisierung wurde FOP benutzt, da dieser frei verfügbar ist und damit keine Sicherheitsmechanismen integriert hat, wie das bei den anderen Formatierern der Fall ist, beispielsweise das Fehlen jeder ungeraden Seite mit Begin der elften Seite. Dennoch gibt es bei der Verwendung einige Nachteile, wie die fehlende Möglichkeit Leerzeichen zu behalten, siehe auch Anhang [*].
next up previous contents
Nächste Seite: 8.4.3 Präsentation Aufwärts: 8.4 Verschiedene Ausprägungen Vorherige Seite: 8.4.1 Allgemeine Bestimmmung von   Inhalt
Tanja Schniederberend 2003-06-11