我正在使用play框架并使用rednerPDF()方法渲染PDF。
我想将部分内容显示在新页面中。
例如,我有两个表,一个表应该在第一页,另一个表应该在下一页,而不是从第一页继续。第一个表格内容是动态的,我们无法确定表格的高度。
有可能吗?
答案 0 :(得分:1)
有可能吗?是
你说一个表(第一个)应该在第一页,你再次说它的内容是动态的。
现在我的问题是它跨越页面,在下一页你要写第二个表?
这是一个通用场景,你提到的是具体的场景
你可以开始尝试使用PdfPTable setSplitLate ()和 setSplitRows
()的两个属性(只是谷歌了解详情阅读Itext In Action)。保持两个表格为两个外部行表格。根据需要以某种方式设置内部和外部的两个属性(即通用情况/具体情况)。
另一种替代方法是在 PdfContentByte 上使用 writeSelectedRows ()方法(我不知道你将使用哪个对象来操纵pdf,但你可以从< strong> PdfWriter ,* PdfStamper *使用 getDirectContent / * UnderContent * / OverContent 生成表后使用此方法。要使用此方法,您必须设置表的总宽度,以便可以通过 PdfPTable 的 getTotalHeight 方法计算高度。如果您使用此方法正确的高度,你绝对知道你的桌子在哪里结束。但是你必须阅读所有这些特定部分&amp;先了解。
答案 1 :(得分:1)
使用yahp,您可以使用特殊的html标记来强制分页
<yahp:pb />
答案 2 :(得分:0)
我们可以通过page-break-after实现这一点:总是
请参考 Alternate to PDF for dynamically generated document with page breaks