XSL-FO region-beforeオブジェクト
XSL-FO リファレンスマニュアル
定義と使用法
<fo:region-before> オブジェクトはページの上部領域(ヘッダー)を定義します。
XSL-FO は次の要素を使用してページの領域を定義します:
- <fo:region-body> は本体領域を定義します
- <fo:region-before> は上部領域(ヘッダー)を定義します
- <fo:region-after> は下部領域(フッター)を定義します
- <fo:region-start> は左側領域(左サイドバー)を定義します
- <fo:region-end> は右側領域(右サイドバー)を定義します
注意:region-before、region-after、region-start、region-end はすべて region-body の一部です。region-body 内のテキストが他の領域のテキストを覆わないようにするには、region-body のマージンは少なくとも上記の4つのサブ領域のサイズと同じでなければなりません。
注意:XSL-FO 1.0 バージョンの勧告によると、padding と border-width 属性は 0 でなければなりません。
構文
<!--
Contents:EMPTY
-->
</fo:region-before>
属性
| 属性 [A-B] | 属性 [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 |
例 1
XSL-FO は「Page Masters」という名前のページテンプレートを使用してページのレイアウトを定義します。各テンプレートは一意の名前を持つ必要があります:
<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>
上記の例では、3つの <fo:simple-page-master> 要素が3つの異なるテンプレートを定義しています。各テンプレート(page-master)には異なる名前があります。
最初のテンプレートは「intro」という名前です。これは紹介ページのテンプレートとして使用できます。
2番目と3番目のテンプレートは「left」と「right」という名前です。これらは偶数ページと奇数ページのテンプレートとして使用できます。
例 2
これはXSL-FOドキュメントから抽出した断片です:
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>
上記のコードは、「A4」という名前の「Simple Page Master Template」を定義しています。
ページの幅は297ミリメートル、高さは210ミリメートルです。
ページの4つのマージン(上マージン、下マージン、左マージン、右マージン)はすべて1センチメートルです。
本体のマージンは3センチメートルです(四辺すべて)。
本体の before、after、start、end 領域はすべて2センチメートルです。
上記の例の本体の幅は、ページ幅から左右のマージンと region-body のマージンを引いて計算できます:
297mm - (2 x 1cm) - (2 x 3cm) = 297mm - 20mm - 60mm = 217mm
注意:region(region-start と region-end)は計算に含まれていません。前述のとおり、これらの領域は本体の一部です。
XSL-FO リファレンスマニュアル その他の拡張