XSL-FO チュートリアルlogin
XSL-FO チュートリアル
著者:php.cn  更新時間:2022-04-21 16:29:33

XSL-FOページ



XSL-FO は、「ページマスター」と呼ばれるページテンプレートを使用してページのレイアウトを定義します。


XSL-FO ページ テンプレート

XSL-FO は、「ページ マスター」という名前のページ テンプレートを使用して、ページのレイアウトを定義します。各テンプレートには一意の名前が必要です:

<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 マスター名="そうです">
​ <fo:region-body margin-left="3in" margin-right="2in" />
</fo:simple-page-master>

上の例では、3 つの <fo : simple-page-master> 要素は 3 つの異なるテンプレートを定義します。各テンプレート (ページマスター) には異なる名前が付いています。

最初のテンプレートは「intro」という名前です。紹介ページのテンプレートとしてご利用いただけます。

2 番目と 3 番目のテンプレートには、「left」と「right」という名前が付けられています。これらは、偶数ページと奇数ページのページ テンプレートとして利用できます。ページサイズ


XSL-FO ページマージン

XSL-FO は、次の属性を使用してページのマージンを定義します:

  • margin-top は上マージンを定義します

  • margin-bottom は下マージンを定義します


margin-left は左マージンを定義します

margin-right は右マージンを定義します
  • margin はすべての辺のマージンを定義します
  • XSL-FO ページ領域
  • XSL-FO は以下を使用します要素はページの領域を定義します。

  • region-body は本文領域を定義します

  • region-before は上部領域 (ヘッダー) を定義します


region-after は下部領域 (フッタ) を定義します

region -start は左側のリージョン (左の列) を定義します
  • region-end は右のリージョン (右の列) を定義します
  • region-before、region-after、region-start、region-end に注意してくださいメインエリアの一部です。メイン領域のテキストがこれらの領域のテキストを覆わないようにするには、メイン領域の余白は少なくとも他の領域のサイズと等しくなければなりません。

  • XSL-FO の例

    これは、XSL-FO ドキュメントから抽出されたスニペットです:

    <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 extend="2cm"/>
    ​ <fo:region-after extend="2cm"/>
    ​ <fo:region-start extend="2cm"/>
    ​ <fo:region-end extend="2cm"/>
    </fo:simple-page-master>

    上記のコードは、「A4」という名前の「シンプル ページ マスター テンプレート」を定義します。

    ページの幅は297mm、高さは210mmです。

    ページの4つの余白(上余白、下余白、左余白、右余白)はすべて1cmです。

    本体の余白は3cm(四辺)です。

    本体の前後、開始、終了エリアはすべて2cmです。

    上記の例の本文の幅は、ページ幅から左右のマージンとregion-bodyのマージンを引くことで計算できます:

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

    リージョン (リージョン開始とリージョン終了) は計算に含まれないことに注意してください。前に説明したように、これらの領域は本体の構成要素です。


PHP中国語ウェブサイト