2011-11-30 32 views
4

我在XSL-FO中使用標記和「檢索表標記」來創建PDF轉換中的頁腳。XSL FO繼續/運行表,頁腳中的標記

我需要一個解決方案,其中一列表中有一個「乾淨的」頁腳,多列表的每個列中斷前有一個帶有添加文本(「繼續」)的頁腳。添加的文本應該僅在分頁符之前應用,如果表格在列之間中斷。

我的當前代碼差不多這樣做。它適用於多列表格,但對於單列表格,即使表格沒有中斷,也會添加「續」文本。

代碼:

<fo:table-body> 
    <fo:table-row> 
     <fo:table-cell> 
     <fo:block> 
      <fo:marker marker-class-name="footer-continued">(continued)</fo:marker> 
     </fo:block> 
     <fo:block> 
      <xsl:text>Contents</xsl:text> 
     </fo:block> 
     <fo:block> 
      <fo:marker marker-class-name="footer-continued"></fo:marker> 
     </fo:block> 
     </fo:table-cell> 
    </fo:table-row> 
    </fo:table-body> 

    <fo:table-footer> 
    <fo:table-row> 
     <fo:table-cell> 
     <fo:block> 
      <fo:retrieve-table-marker retrieve-class-name="footer-continued" 
            retrieve-position="first-including-carryover" 
            retrieve-boundary-within-table="table"/> 
     </fo:block> 
     </fo:table-cell> 
    </fo:table-row> 
    </fo:table-footer> 

回答

3

好吧,這個工作對我來說:

我換

retrieve-position="first-including-carryover" 

retrieve-position-within-table="last-ending-within-page" 
+0

你使用天線的房子? 由於我使用fop,並且總是收到錯誤消息 – bvb1909

+0

OP可能使用了XslFormatter;那時FOP不支持'fo:retrieve-table-marker'元素,但它現在支持它們(FOP version> = 2.0),儘管有一些限制。 – lfurini