簡體   English   中英

XSL-FO:如何為每個頁面重復一個xsl表?

[英]XSL-FO : How do I repeat an xsl table for every page?

我以前通過在xsl-fo的AKA標頭部分的region-before中包含表來完成此操作。 但是,這會帶來一個問題,因為工作台的高度不是固定的,因此需要動態設置區域主體的邊緣頂部。

因此,我需要將其包括在region-body中。 我發現了有關此問題,但它們僅涉及如何重復表頭。 就我而言,我需要在每個頁面中重復整個表。 可能嗎? 如果是這樣,我該怎么做?

編輯順便說一句,我在Xalan上使用FOP

如果將Antenna House或FOP與Saxon 9.5,Xalan或DotNet 4.0 XSLT處理器一起使用,則可以使用來自Print and Page Layout Community Group @ W3C的XSLT擴展來在XSLT的中間運行FO處理器轉變。 請參見http://www.w3.org/community/ppl/wiki/XSLTExtensions中的示例

您可以制作一個最小的FO文檔以僅顯示表格,然后在該文檔上運行擴展功能以獲取包含格式化表格的區域樹。 最后,您將根據格式化表格的高度調整fo:region-body的邊距。

如果您沒有可以運行擴展功能的XSLT處理器,但是確實有可以產生區域樹輸出的FO處理器,則可以運行FO處理器一次以獲取表的區域樹,然后對其進行真實和讓XSLT轉換使用先前生成的區域樹XML來計算表高度和fo:region-body的邊距。

將要重復的表放在另一個表的標題中。 該表將是一個單元格寬,並且包含所有正文內容。 由於表位於標題中,因此它將在正文表內容流向的每個頁面上重復。 僅當您的內容為一欄內容時,此方法才有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM