XSL-FO region-beforeObjekt
XSL-FO-Referenzhandbuch
Definition und Verwendung
Das Objekt <fo:region-before> definiert die obere Region (Kopfzeile) 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 vermeiden, dass Text in region-body Text in anderen Bereichen überlappt, muss der Rand von region-body mindestens so groß sein wie die vier oben genannten Unterbereiche.
Hinweis:Gemäß der XSL-FO-1.0-Empfehlung müssen die Attribute padding und border-width 0 sein.
Syntax
<!--
Inhalt:EMPTY
-->
</fo:region-before>
Attribute
| Attribute [A-B] | Attribute [C-Z] |
|---|---|
| background-attachment | clip |
| background-color | display-align |
| background-image | extent |
| background-repeat | overflow |
| background-position-horizontal | padding-after |
| background-position-vertical | padding-before |
| border-after-color | padding-bottom |
| border-after-style | padding-end |
| border-after-width | padding-left |
| border-before-color | padding-right |
| border-before-style | padding-start |
| border-before-width | padding-top |
| border-bottom-color | precedence |
| border-bottom-style | region-name |
| border-bottom-width | reference-orientation |
| border-end-color | writing-mode |
| border-end-style | |
| border-end-width | |
| border-left-color | |
| border-left-style | |
| border-left-width | |
| border-right-color | |
| border-right-style | |
| 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 Layout von Seiten zu definieren. Jede Vorlage muss einen eindeutigen Namen haben:
<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 dritte Vorlage heißen „left“ und „right“. Sie können als Seitenvorlagen für gerade und ungerade Seitenzahlen verwendet werden.
Beispiel 2
Dies ist ein Fragment, das aus einem XSL-FO-Dokument extrahiert wurde:
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 Ränder der Seite (oberer Rand, unterer Rand, linker Rand, rechter Rand) sind alle 1 Zentimeter.
Der Rand des Body beträgt 3 Zentimeter (auf allen vier Seiten).
Die before-, after-, start- und end-Regionen des Body sind alle 2 Zentimeter.
Die Breite des Textkörpers im obigen Beispiel kann berechnet werden, indem die linken und rechten Ränder und die region-body-Ränder von der Seitenbreite abgezogen werden:
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 Referenzhandbuch Weitere Erweiterungen