XSL-FO / Die Struktur von Formatting Objects (FO)
![]() |
![]() |
➪ Um die FO-basierte Generierung von PDF-, RTF-, PS-, PCL- und anderen Dateien verstehen zu können, müssen Sie zunächst die Struktur von Formatting Objects (FO) verstehen.
Da es neben den Seitenrändern zusätzliche Einzüge (fo:region-before, o:region-after, fo:region-start, fo:region-end) geben kann, sind solide Grundlagen der Seitenaufteilung wichtig. Im folgenden FO-Dokument finden Sie ein Beispiel, das (nachdem Sie es abgespeichert und die oben beschriebene Transformation aufgerufen haben) so aussieht:
Hier sehen Sie die jeweiligen "fo:region" farblich dargestellt und textlich erläutert.
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master
margin-right="15mm"
margin-left="2cm"
margin-bottom="1cm"
margin-top="2cm"
page-width="21cm"
page-height="297mm"
master-name="layout1">
<fo:region-body margin-right="5cm"
margin-bottom="15mm"
margin-top="35mm"
margin-left="45mm"
background-color="lightgrey" />
<fo:region-before extent="30mm"
background-color="#FFFF33" />
<fo:region-after extent="7mm"
background-color="#B0E0E6" />
<fo:region-start extent="30mm"
background-color="#CC99FF" />
<fo:region-end extent="45mm"
background-color="#CEFF00" />
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="layout1">
<fo:static-content flow-name="xsl-region-before">
<fo:block text-align="center">xsl-region-before</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-end">
<fo:block text-align="center">xsl-region-end</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-start">
<fo:block text-align="center">xsl-region-start</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block text-align="center">xsl-region-after</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block text-align="center">xsl-region-body</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
Insgesamt gibt es folgende FO-Elemente, die jeweils diverse Attribute und Childnodes haben können:
wg / 16. Juni 2020
Fragen? Anmerkungen? Tipps?
Bitte nehmen Sie Kontakt zu mir auf.
ᐅ XSL-FO
V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn
☎ 0151. 750 360 61 * eMail: info10@wilfried-grupe.de