Latest web development tutorials

XSL-FO region-body 對象

XSL-FO 參考手冊 XSL-FO參考手冊

定義和用法

<fo:region-body> 對象定義了頁面的主體區域。

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 的邊距至少必須與上述四個子區域的尺寸相同。

提示:為了在region-body區提供多個列,需要把column-count屬性設置為大於1! /p>

注意:如果overflow屬性的值為"scroll",則您不能把column-count屬性設置為大於1!

注意:根據XSL-FO 1.0版本的推薦標準,padding和border-width屬性必須為0。


語法

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

屬性

属性 [A-B] 属性 [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

實例1

XSL-FO 使用名為"Page Masters" 的頁面模板來定義頁面的佈局。 每個模板必須擁有一個唯一的名稱:

<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>

在上面的實例中,三個<fo:simple-page-master> 元素,定義了三個不同的模板。 每個模板(page-master)都有不同的名稱。

第一個模板名為"intro"。 它可作為介紹頁面的模板使用。

第二個和第三個模板名為"left" 和"right"。 它們可作為偶數和奇數頁碼的頁面模板使用。

實例2

這是從某個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 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 毫米。

頁面的四個邊距(上邊距、下邊距、左邊距、右邊距)均為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)沒有被計算進來。 正如之前講解過的,這些區(region)是主體的組成部分。


XSL-FO 參考手冊 XSL-FO參考手冊