如何避免 XSL FO 中的换表问题



我正在使用XSLFO生成PDF文件。

我的PDF页面包含一些文本,然后它包含一个表格,如果表格行大小增加,则整个表格不会进入页面。 有些行将出现在下一页中。我想要一些东西,如果表格可以适合页面,那么它应该从新页面开始,而不是像往常一样将表格分解为一页中的一行和另一页中的某行。

如果表格适合一页,您可以在fo:table上使用keep-together="always"。 如果表的长度可能超过一页,也可能不超过一页,则可以将keep-together与数值(例如,keep-together="1")一起使用,但该表的工作方式取决于您使用的 XSL 格式化程序。 请参阅 https://www.w3.org/TR/xsl11/#keep-together 和 https://www.w3.org/TR/xsl11/#keepbreak。

或者,您可以在每个fo:table-row(最后一个除外)上使用 keep-with-next,或者在每个fo:table-row(第一个除外)上使用keep-with-previous,但除非fo:table-row也具有keep-together值,否则可能不会阻止表行中断。同样,数值的工作原理取决于您使用的 XSL 格式化程序。

最新更新