Zum Inhalt springen

Extensible Stylesheet Language – Formatting Objects

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 7. Mai 2005 um 14:41 Uhr durch Eipa (Diskussion | Beiträge) (Vorgangsweise: (auch FO-Prozessor genannt) hinzu). Sie kann sich erheblich von der aktuellen Version unterscheiden.

XSL-FO (Extensible Stylesheet Language - Formatting Objects) ist eine XML-Sprache zur Erzeugung von Layouts aus XML-Dokumenten für die Darstellung auf Papier oder dem Bildschirm.

XSL-FO ist - neben XSLT und XPath - ein Teil des XSL-Standards.

Im Grunde genommen ist XSL-FO eine Seitenbeschreibungssprache, die unter anderem XML-Marken (engl. Tags) und -Attribute für die folgenden Aspekte enthält:

  • Regionen, Ränder und Bereiche einer Seite
  • Breite und Höhe von Seiten
  • Abfolge von Seiten
  • Seitennummerierung
  • Rahmen, Abständen, Spalten und Blöcken
  • Absätze, Listen und Tabellen
  • Textformatierung wie Satzformate und Trennung
  • Linien, Bilder und andere Objekte
  • und vieles mehr

XSL-FO enthält nicht alle Fähigkeiten, die gängige Textverarbeitungssysteme unterstützen. Teilweise fehlen noch Implementationen in den Formatierungsmöglichkeiten. Es gilt allerdings zu beachten, dass es bei XSL-FO um eine Formatierungssprache handelt und es deshalb nicht Ziel ist, automatische Funktionen wie das Erstellen eines Inhaltsverzeichnis, Serienbriefs usw. zu ermöglichen, denn hierfür wäre der Funktionsumfang von XSLT zuständig. Hierdurch wird eine Trennung zwischen Darstellung (durch XSL-FO) und Logik (XSLT) ermöglicht, wie sie in Textverarbeitungssystemen zugunsten einer einfacheren Handhabung nicht zu finden ist. Mit Abiword kann man XSL-FO Dokumente importieren und exportieren, allerdings werden hierbei nicht alle Funktionen unterstützt.

Für die Generierung von PDF, RTF, ASCII-Text und sonstigen Print-Medien stehen sogenannte "FO-Prozessoren" zur Verfügung. Ein weit verbreitetes Programm ist FOP (Formatting Objects Processor) aus dem Apache-Projekt. Eine Java-Anwendung, die aus XSL-FO-Daten PDF-Dokumente erzeugen kann und teilweise wird auch Postscript und PCL unterstützt.

Vorgangsweise

Den Ausgangspunkt für ein mit Hilfe von XSL erstelltes PDF-Dokument bildet eine XML-Datei. Aus ihr werden im ersten Schritt durch gezielte Transformationen die XML-Elemente ausgewählt, die im PDF-Dokument dargestellt werden sollen. Gleichzeitig werden alle erforderlichen XSL-FO-Elemente ergänzt, die die in der obigen Liste genannten Objekte (beispielsweise Seitengestaltung, Gestaltung von Spalten, Listen, Tabellen, ...) erzeugen. Das Ergebnis ist eine FO-Datei. In einem zweiten Schritt erzeugt ein geeigneter Formatierer (auch FO-Prozessor genannt) die gewünschte PDF-Datei. Zwei Schritte von XML zu PDF

Literatur

Vorlage:Stub