我有三个内容要渲染 PDF(按顺序):C1
、C2
和 C3
。
C1
和 C3
可以由多个页面呈现。
C2
只需要一页。
问题出在C2
页面上的C3
渲染。
是否有任何选项或配置使C2
页面仅显示C2
内容?
最佳答案
(这个答案基于您使用 XSL-FO 的前提,从 apache-fop 标签的存在推导出来)
如果您对每个内容部分使用不同的 fo:page-sequence
,则可以保证每个部分都会从新页面的开头开始,即使前一页仍然有可用空间:
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
...
</fo:layout-master-set>
<fo:page-sequence master-reference="pages">
... C1 ...
</fo:page-sequence>
<fo:page-sequence master-reference="pages">
... C2 ...
</fo:page-sequence>
<fo:page-sequence master-reference="pages">
... C3 ...
</fo:page-sequence>
</fo:root>
您还可以在 fo:block
元素上使用 break-before="page"
或 break-after="page"
属性强制分页,但我认为以前的解决方案更优雅。
关于java - 仅在一页上显示内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28468589/