[英]xsl-fo different header for first page of document, not each chapter
我正在使用XSL-fo從DITA書簽輸出到PDF,我想要一個獨特的標題出現在文檔的第一頁,但不是在每章的第一頁。 我已經嘗試使用conditional-page-master-reference元素的page-position屬性,但這導致我的自定義標題出現在每章的第一頁上,而我希望自定義標題只出現一次,在文檔的第一頁上,文檔的每個其他頁面上都出現另一個標題,與章節邊界無關。
您需要使用page-sequence-master
<fo:page-sequence-master master-name="recto-verso-document">
<fo:repeatable-page-master-alternatives>
<fo:conditional-page-master-reference odd-or-even="odd" master-reference="page-odd" blank-or-not-blank="not-blank"/>
<fo:conditional-page-master-reference blank-or-not-blank="not-blank" odd-or-even="odd" page-position="first" master-reference="last-page-odd"/>
<fo:conditional-page-master-reference blank-or-not-blank="not-blank" odd-or-even="even" page-position="rest" master-reference="last-page-even"/>
<fo:conditional-page-master-reference odd-or-even="even" master-reference="page-even" blank-or-not-blank="not-blank"/>
</fo:repeatable-page-master-alternatives>
</fo:page-sequence-master>
然后,對於每個條件頁面主參考,為每個參數定義simple-page-master:
<fo:simple-page-master master-name="first-page-odd" page-height="11in" page-width="8.5in" margin-top="0.5in" margin-left="1.0in" margin-right="0.5in">
<fo:region-body region-name="xsl-region-body" margin-top="0.80in" margin-bottom=".5in" overflow="auto"/>
<fo:region-before region-name="xsl-region-before-first" extent="1in"/>
<fo:region-after region-name="xsl-region-after" extent="0.6in"/>
</fo:simple-page-master>
<fo:simple-page-master master-name="page-odd" page-height="11in" page-width="8.5in" margin-top="0.5in" margin-left="1.0in" margin-right="0.5in">
<fo:region-body region-name="xsl-region-body" margin-top="0.80in" margin-bottom=".5in" overflow="auto"/>
<fo:region-before region-name="xsl-region-before" extent="1in"/>
<fo:region-after region-name="xsl-region-after" extent="0.6in"/>
</fo:simple-page-master>
然后在頁面序列中為每個region-name定義區域。 例如:
<fo:static-content flow-name="xsl-region-before-first">
<fo:block>do something for your header</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-before">
<fo:block>do something for your header</fo:block>
</fo:static-content>
沒有看到你的FO,這是我能提供的最好的解決方案
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.