XSL-FO region-bodyObjekt

XSL-FO 参考手册XSL-FO-Referenzhandbuch

Definition und Verwendung

Das <fo:region-body>-Objekt definiert den Hauptbereich einer Seite.

XSL-FO verwendet die folgenden Elemente, um die Bereiche einer Seite zu definieren:

  • <fo:region-body> definiert den Hauptbereich
  • <fo:region-before> definiert die obere Region (Kopfzeile)
  • <fo:region-after> definiert den unteren Bereich (Fußzeile)
  • <fo:region-start> definiert den linken Bereich (linke Seitenleiste)
  • <fo:region-end> definiert den rechten Bereich (rechte Seitenleiste)

Hinweis:region-before, region-after, region-start und region-end sind alle Teil von region-body. Um zu verhindern, dass sich Text innerhalb von region-body mit Text in anderen Regionen überlappt, muss der Rand von region-body mindestens genauso groß sein wie die Abmessungen der vier oben genannten Unterregionen.

Tipp:Um mehrere Spalten im region-body-Bereich bereitzustellen, muss das Attribut column-count auf einen Wert größer als 1!/p> gesetzt werden

Hinweis:Wenn der Wert des Attributs overflow "scroll" ist, kann das Attribut column-count nicht auf größer als 1 gesetzt werden!

Hinweis:Gemäß der XSL-FO-1.0-Empfehlung müssen die Attribute padding und border-width 0 sein.


Syntax

<fo:region-body>
<!--
Inhalt:EMPTY
-->
</fo:region-body>

Attribute

Attribute [A-B] Attribute [C-Z]
background-attachment clip
background-color column-count
background-image column-gap
background-repeat display-align
background-position-horizontal end-indent
background-position-vertical margin-bottom
border-after-color margin-left
border-after-style margin-right
border-after-width margin-top
border-before-color overflow
border-before-style padding-after
border-before-width padding-before
border-bottom-color padding-bottom
border-bottom-style padding-end
border-bottom-width padding-left
border-end-color padding-right
border-end-style padding-start
border-end-width padding-top
border-left-color region-name
border-left-style reference-orientation
border-left-width space-after
border-right-color space-before
border-right-style writing-mode
border-right-width
border-start-color
border-start-style
border-start-width
border-top-color
border-top-style
border-top-width

Beispiel 1

XSL-FO verwendet Seitenvorlagen namens "Page Masters", um das Seitenlayout zu definieren. Jede Vorlage muss einen eindeutigen Namen haben:

<fo:simple-page-master master-name="intro">
<fo:region-body margin="5in" />
</fo:simple-page-master>

<fo:simple-page-master master-name="left">
<fo:region-body margin-left="2in" margin-right="3in" />
</fo:simple-page-master>

<fo:simple-page-master master-name="right">
<fo:region-body margin-left="3in" margin-right="2in" />
</fo:simple-page-master>

Im obigen Beispiel definieren drei <fo:simple-page-master>-Elemente drei verschiedene Vorlagen. Jede Vorlage (Page Master) hat einen anderen Namen.

Die erste Vorlage heißt "intro". Sie kann als Vorlage für die Einführungsseite verwendet werden.

Die zweite und die dritte Vorlage heißen "left" und "right". Sie können als Seitenvorlagen für gerade und ungerade nummerierte Seiten verwendet werden.

Beispiel 2

Dies ist ein Fragment, das aus einem XSL-FO-Dokument extrahiert wurde:

<fo:simple-page-master master-name="A4"
page-width="297mm" page-height="210mm"
margin-top="1cm" margin-bottom="1cm"
margin-left="1cm" margin-right="1cm">
<fo:region-body margin="3cm"/>
<fo:region-before extent="2cm"/>
<fo:region-after extent="2cm"/>
<fo:region-start extent="2cm"/>
<fo:region-end extent="2cm"/>
</fo:simple-page-master>

Der obige Code definiert ein "Simple Page Master Template" namens "A4".

Die Seitenbreite beträgt 297 Millimeter und die Höhe 210 Millimeter.

Die vier Seitenränder (oberer Rand, unterer Rand, linker Rand, rechter Rand) sind alle 1 Zentimeter.

Der Rand des Textkörpers beträgt 3 Zentimeter (auf allen vier Seiten).

Die Regionen before, after, start und end des Textkörpers sind alle 2 Zentimeter.

Die Breite des Body im obigen Beispiel kann berechnet werden, indem man den linken und rechten Rand sowie die Ränder von region-body von der Seitenbreite abzieht:

297mm - (2 x 1cm) - (2 x 3cm) = 297mm - 20mm - 60mm = 217mm

Beachten Sie, dass die Regionen (region-start und region-end) nicht in die Berechnung einbezogen werden. Wie bereits erläutert, sind diese Regionen Teil des Hauptbereichs.


XSL-FO 参考手册XSL-FO Referenzhandbuch Weitere Erweiterungen