XSL-FO (eXtensible Stylesheet Language/Formatting Ob-
jects) ist eine W3C-Syntax, die speziell für die Transformation von XML-Dokumenten in PDF- und andere Druck-Formate geschaffen wurde. Dabei stellen die Formatierungsobjekte eine Zwischenschicht dar, in der die XML-Daten zunächst umgewandelt werden, bevor sie mit einem geeigneten Prozessor in ihr Zielformat gebracht werden. Dieses Buch enthält alles, was man zum Einsatz von XSL-FO benötigt: eine Darstellung des Standards, sehr viele Beispieldateien, Schemazeichnungen zum besseren Verständnis und Referenzen. XSL-FO-Prozessoren sind kostenlos und - je nach Anforderung - kostenpflichtig erhältlich. Dieses Buch setzt den Open Source-Prozessor Apache FOP ein und zeigt seine Verwendung in Java und. NET. XSL-FO entfaltet mit den beiden anderen Standards XSLT und XPath seine wahre Größe, da so die Möglichkeit besteht, komplexe Transformationen und Algorithmen zur Umwandlung zu erzeugen, die ebenfalls in XSLT eingebettet sind und anstelle von typischen HTML-Ausgaben nun PDF erzeugen können.
Inhaltsverzeichnis
1;Inhaltsverzeichnis;6 2;Vorwort;11 3;1. Einführung;20 3.1;1. 1. FO/PDF erzeugen;20 3.1.1;1. 1. 1. Hallo-Welt-Beispiel;21 3.1.2;1. 1. 2. Werte aus XML übernehmen;24 3.1.3;1. 1. 3. Andere Formate erzeugen;26 3.2;1. 2. Entwicklungsumgebung einrichten;29 3.2.1;1. 2. 1. Technische Voraussetzungen;29 3.2.2;1. 2. 2. Konfiguration;30 3.2.3;1. 2. 3. Verwendung;31 3.2.4;1. 2. 3. 1 Aufruf des Prozessors;32 3.2.5;1. 2. 3. 2 Angabe von Parametern;34 3.2.6;1. 2. 3. 3 XPath testen;35 3.3;1. 3. Theoretischer Hintergrund;37 3.3.1;1. 3. 1. Transformation in den Ergebnisbaum;38 3.3.2;1. 3. 2. Transformation in das Zielformat;42 3.4;1. 4. Nutzung von XSL-FO;43 3.4.1;1. 4. 1. Grundlegende Überlegungen;44 3.4.2;1. 4. 2. .NET;45 3.4.3;1. 4. 3. Java;47 4;2. Seiten und Seitenvorlagen;50 4.1;2. 1. Elementübersicht;50 4.1.1;2. 1. 1. Seitenvorlagen und Regionen;52 4.1.2;2. 1. 1. 1 Grundlagen;52 4.1.3;2. 1. 1. 2 Beispiel;54 4.1.4;2. 1. 1. 3 FO-Baum einrichten;59 4.1.5;2. 1. 1. 4 Seitenvorlagen erstellen;60 4.1.6;2. 1. 1. 5 Regionen;61 4.1.7;2. 1. 2. Seitenverlaufsvorlagen und Seitenverläufe;62 4.1.8;2. 1. 2. 1 Beispiel;62 4.1.9;2. 1. 2. 2 Seitenverlaufsvorlage erstellen;65 4.1.10;2. 1. 3. Konkrete Seiten(-verläufe);66 4.1.11;2. 1. 4. Seitenalternativen;69 4.1.12;2. 1. 5. Statische Bereiche;75 4.1.13;2. 1. 5. 1 Beispiel;75 4.1.14;2. 1. 5. 2 Eigenschaften von Seitenverläufen;81 4.1.15;2. 1. 5. 3 Statische Bereiche anlegen;83 4.1.16;2. 1. 5. 4 Titel anlegen;83 4.1.17;2. 1. 5. 5 Seitenzahlen ausgeben;84 5;3. Blöcke und Gebiete;87 5.1;3. 1. Grundlagen;87 5.1.1;3. 1. 1. Formatierung;88 5.1.2;3. 1. 2. Gebiete;91 5.1.3;3. 1. 2. 1 Grundeigenschaften von Gebieten;92 5.1.4;3. 1. 2. 2 Zuordnungsrechtecke;94 5.1.5;3. 1. 2. 3 Kanten;96 5.2;3. 2. Auffüllung;98 5.2.1;3. 2. 1. Grundlagen;99 5.2.2;3. 2. 2. Beispiel;99 5.3;3. 3. Rahmen;104 5.3.1;3. 3. 1. Grundlagen;104 5.3.2;3. 3. 2. Beispiel;106 5.4;3. 4. Abstand und Rand;108 5.4.1;3. 4. 1. Grundlagen;108 5.4.2;3. 4. 1. 1 Ränder;109 5.4.3;3. 4. 1. 2 Abstände;10
9 5.4.4;3. 4. 1. 3 Einzüge;110 5.4.5;3. 4. 2. Beispiel;110 5.4.6;3. 4. 2. 1 Rahmen;111 5.4.7;3. 4. 2. 2 Abstände;112 5.4.8;3. 4. 2. 3 Einzüge;114 5.5;3. 5. Hintergrund;116 5.5.1;3. 5. 1. Grundlagen;116 5.5.2;3. 5. 2. Beispiel;118 5.5.3;3. 5. 2. 1 Hintergrundfarbe;118 5.5.4;3. 5. 2. 2 Hintergrundbild;121 5.6;3. 6. Syntaxübersicht für allgemeine Blöcke;125 5.6.1;3. 6. 1. Block;125 5.6.2;3. 6. 2. Block-Container;127 5.6.3;3. 6. 3. Umschließender Block;127 6;4. Tabellen;130 6.1;4. 1. Tabellen erstellen;130 6.1.1;4. 1. 1. Grundlagen;131 6.1.2;4. 1. 2. Einfache Standardtabelle;132 6.1.3;4. 1. 3. Abmaßungen;140 6.1.4;4. 1. 3. 1 Tabellen- und Spaltenbreite;140 6.1.5;4. 1. 3. 2 Tabellen- und Zellenhöhe;142 6.1.6;4. 1. 4. Rahmen;143 6.1.7;4. 1. 5. Auffüllung;146 6.1.8;4. 1. 6. Überspannende Zellen;148 6.2;4. 2. Syntaxübersicht Tabellenausgabe;150 6.2.1;4. 2. 1. Tabellengerüst mit Titel;150 6.2.2;4. 2. 2. Tabelle;151 6.2.3;4. 2. 3. Spalte;152 6.2.4;4. 2. 4. Tabellentitel;153 6.2.5;4. 2. 5. Kopfzeile;154 6.2.6;4. 2. 6. Fußzeile;154 6.2.7;4. 2. 7. Datenbereich;155 6.2.8;4. 2. 8. Reihe;156 6.2.9;4. 2. 9. Zelle;157 7;5. Listen;160 7.1;5. 1. Listen erstellen;160 7.1.1;5. 1. 1. Grundlagen;160 7.1.2;5. 1. 2. Beispiel;162 7.1.3;5. 1. 3. Nummerierte Listen;168 7.2;5. 2. Syntaxübersicht Listen;172 7.2.1;5. 2. 1. Listenblock;173 7.2.2;5. 2. 2. Listeneintrag;173 7.2.3;5. 2. 3. Listeneintrag-Inhalt;174 7.2.4;5. 2. 4. Aufzählungszeichen;174 8;6. Textformatierung;177 8.1;6. 1. Grundlagen;177 8.1.1;6. 1. 1. Rechtecke;177 8.1.2;6. 1. 2. Buchstaben;180 8.1.3;6. 1. 3. Linien;182 8.2;6. 2. Absatzformatierung;186 8.2.1;6. 2. 1. Absolute Ausrichtungen;186 8.2.2;6. 2. 1. 1 Grundlagen;187 8.2.3;6. 2. 1. 2 Beispiel;188 8.2.4;6. 2. 2. Spezielle Ausrichtungen;189 8.2.5;6. 2. 2. 1 Grundlagen;189 8.2.6;6. 2. 2. 2 Beispiele;194 8.2.7;6. 2. 3. Zeilenformatierung;195 8.2.8;6. 2. 3. 1 Grundlagen;195 8.2.9;6. 2. 3. 2 Beispiele;199 8.3;6. 3. Zeichenformatierung;204 8.3.1;6. 3. 1. Zeichensatz-Eigenschaften;204 8
.3.2;6. 3. 1. 1 Grundlagen;204 8.3.3;6. 3. 1. 2 Beispiele;207 8.3.4;6. 3. 2. Zeichen-Eigenschaften;209 8.3.5;6. 3. 2. 1 Grundlagen;209 8.3.6;6. 3. 2. 2 Beispiele;211 8.3.7;6. 3. 3. Schreibrichtung;212 9;7. Grafik und Farbe;217 9.1;7. 1. Grafiken verwenden;217 9.1.1;7. 1. 1. Grafik in einem Block;218 9.1.2;7. 1. 2. In-Zeilen-Grafiken;222 9.1.3;7. 1. 3. Umfließender Text;224 9.1.4;7. 1. 4. Hintergrundbilder;227 9.2;7. 2. Farben verwenden;227 9.3;7. 3. Syntaxübersicht;229 9.3.1;7. 3. 1. Grafikelemente;229 9.3.2;7. 3. 1. 1 Hintergrundgrafik;229 9.3.3;7. 3. 1. 2 Grafik einfügen;231 9.3.4;7. 3. 1. 3 Fremde Objekte;232 9.3.5;7. 3. 2. Farben;233 9.3.6;7. 3. 2. 1 Hintergrundfarbe;233 9.3.7;7. 3. 2. 2 Farbattribute;233 9.3.8;7. 3. 2. 3 Farbfunktionen;234 9.3.9;7. 3. 2. 4 Farbnamen;234 10;8. Bucherstellung;240 10.1;8. 1. Dokument einrichten;240 10.1.1;8. 1. 1. Grundlagen;240 10.1.2;8. 1. 1. 1 Format;241 10.1.3;8. 1. 1. 2 Satzspiegel;242 10.1.4;8. 1. 2. Vereinfachte Umsetzung in XSL-FO;246 10.1.5;8. 1. 2. 1 Dokumentstruktur;247 10.1.6;8. 1. 2. 2 Auslagerungstechniken;249 10.1.7;8. 1. 2. 3 Seiten- und Seitenverlaufsvorlagen;250 10.2;8. 2. Text ausgeben;257 10.2.1;8. 2. 1. Grundlagen;257 10.2.2;8. 2. 2. Formatvorlagen nachbilden;258 10.2.3;8. 2. 3. Vorlagenstruktur aufbauen;262 10.2.4;8. 2. 4. Spaltensatz;270 10.3;8. 3. Verzeichnisse und Titel;272 10.3.1;8. 3. 1. Grundlagen;272 10.3.2;8. 3. 2. Laufende Titel;273 10.3.3;8. 3. 2. 1 Vorbereitung der Regionen;273 10.3.4;8. 3. 2. 2 Seitenzahlen;278 10.3.5;8. 3. 2. 3 Laufende Titel;279 10.3.6;8. 3. 3. Inhaltsverzeichnis;282 10.3.7;8. 3. 4. Verknüpfungen;285 10.4;Symbols;288 11;Index;288