Formatting Objects (FO) / Die Struktur von Formatting Objects (FO)

Die Struktur von Formatting Objects (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:

pic/FO2.png

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>

Tipp: Versuchen Sie einmal, die fo:region-body ohne die margin-Attribute zu konfigurieren.

Insgesamt gibt es folgende FO-Elemente, die jeweils diverse Attribute und Childnodes haben können:

wg / 13. April 2018



Fragen? Anmerkungen? Tips?

Bitte nehmen Sie Kontakt zu mir auf:




XSL-FO



Vielen Dank für Ihr Interesse an meiner Arbeit.


V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn

☎ 0151. 750 360 61 * eMail: info10@wilfried-grupe.de

www.wilfried-grupe.de/FO1_1.html