gpt4 book ai didi

xslt - 表格 XSL-FO 内的分页符

转载 作者:行者123 更新时间:2023-12-04 23:21:22 29 4
gpt4 key购买 nike

我有一个表格的 XSL-FO 样式表。

<fo:page-sequence master-reference="defaultPage">
<fo:flow flow-name="xsl-region-body">
<fo:table table-layout="fixed" width="100%">
<fo:table-column column-width="9pt"/>
<fo:table-column column-width="30pt"/>
<fo:table-column column-width="150pt"/>
<fo:table-header>
<fo:table-row>
<fo:table-cell>
<fo:block><xsl:text>Column 1</xsl:text></fo:block>
</fo:table-cell>
<fo:table-cell>
<fo:block><xsl:text>Column 2</xsl:text></fo:block>
</fo:table-cell>
<fo:table-cell>
<fo:block><xsl:text>Column 3</xsl:text></fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-header>
<fo:table-body>
<fo:table-row>
<xsl:apply-templates select="rbrOcjena"/>
<xsl:apply-templates select="sifPred"/>
<xsl:apply-templates select="nazPred"/>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:flow>
</fo:page-sequence>

该表可以有很多行,所以我想在生成PDF时在当前结束时在新页面上打破它。另外,如果可能的话,我想在新页面上重复表头。我应该在 table 标签中放入哪些属性来实现它?

谢谢!

最佳答案

The table can have many rows, so I'd like to break it on new page when it comes to the end of current



如果没有看到您的 XSL-FO 代码,就很难回答这个问题。请出示。但一般来说,这是通过保持和休息来完成的。例如:
<fo:table-row keep-together.within-page="always">

I would like to repeat table header on new page, if that's possible. What attributes should I put in the table tag to make it so?



不是通过 fo:table 的属性来指示 XSL-FO 处理器在每个页面的顶部重复多行。 .相反,将要重复的行放在 fo:table-header 中。 :
<fo:table-header>
<fo:table-row>
<fo:table-cell>
<!--Block and text content-->
</fo:table-cell>
</fo:table-row>
</fo:table-header>

然后,处理器的默认行为应该是在分页符后重复标题行。那是因为 omit-header-at-break fo:table 的属性是 set to "false" by default .

最明显的原因是立即清楚哪些行属于标题,因此应该重复。如果这只是 fo:table 属性中的引用将多行识别为标题会更困难。您将找到 XSL 规范的相关部分 here .

关于xslt - 表格 XSL-FO 内的分页符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25544330/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com