XSL-FO 頁面(Page)、流(Flow)以及塊(Block)
內容“塊”會“流”入“頁面”中,然后輸出到媒介。
XSL-FO輸出通常被嵌套在<fo:block>元素中,<fo:block>嵌套于<fo:flow>元素中,<fo:flow>嵌套于<fo:page-sequence>元素中:
以下為引用的內容:
<fo:page-sequence>
<fo:flow flow-name="xsl-region-body">
<fo:block>
<!-- Output goes here -->
</fo:block>
</fo:flow>
</fo:page-sequence>
XSL-FO 實例
現在讓我們看一個真實的XSL-FO實例:
以下為引用的內容:
<?xml version="1.0" encoding="ISO-8859-1"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="A4">
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="A4">
<fo:flow flow-name="xsl-region-body">
<fo:block>Hello W3Schools</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
XSL-FO頁面使用來自<fo:flow>元素的數據進行填充。
XSL-FO 頁面順序
XSL-FO使用<fo:page-sequence>元素來定義輸出頁面。
每個輸出頁面都會引用一個定義布局的page master。
每個輸出頁面均有一個定義輸出的<fo:flow>元素。
每個輸出頁面均會按順序(序列)被打印或顯示。
XSL-FO Flow(流)
XSL-FO頁面使用來自<fo:flow>元素的數據進行填充。
<fo:flow>包含所有被打印到頁面的元素。
當頁面被印滿以后,相同的page master會被一遍又一遍地被使用,直到所有頁面的頁面被打印為止。
流動到何處?
<fo:flow>元素有一個名為"flow-name"的屬性。
flow-name屬性的值定義<fo:flow>元素的內容會去往何處。
合法的值:
xsl-region-body (進入region-body)
xsl-region-before (進入region-before)
xsl-region-after (進入region-after)
xsl-region-start (進入region-start)
xsl-region-end (進入region-end)
新聞熱點
疑難解答