Java iText将大表嵌套在另一个表的单元格中
在使用Itext的Java项目中,我创建了一个pdf文件,在这个文件中,我在另一个表的单元格中插入了一个较大的表 我面临的问题是,当表格的内容大于一页时,表格将被带入下一页。相反,我希望上一页中有部分数据,只有超出该页的数据需要转到下一页 如何实现这一点,下面是我使用的代码Java iText将大表嵌套在另一个表的单元格中,java,pdf-generation,itextsharp,itext,Java,Pdf Generation,Itextsharp,Itext,在使用Itext的Java项目中,我创建了一个pdf文件,在这个文件中,我在另一个表的单元格中插入了一个较大的表 我面临的问题是,当表格的内容大于一页时,表格将被带入下一页。相反,我希望上一页中有部分数据,只有超出该页的数据需要转到下一页 如何实现这一点,下面是我使用的代码 PdfPTable outerTable = new PdfPTable(2); outerTable.setHeaderRows(1); outerTable.setSpa
PdfPTable outerTable = new PdfPTable(2);
outerTable.setHeaderRows(1);
outerTable.setSpacingBefore(20);
outerTable.setWidthPercentage(100);
Phrase str_head = new Phrase("Sample Image \n", subFont);
Phrase act_head = new Phrase("Steps \n", subFont);
PdfPCell cell2;
cell2 = new PdfPCell(act_head);
outerTable.addCell(cell2);
cell2 = new PdfPCell(str_head);
cell2.setBorder(Rectangle.NO_BORDER);
outerTable.addCell(cell2);
/* content row*/
cell2 = new PdfPCell("-----Sample-------");
cell2.setBorder(Rectangle.NO_BORDER);
outerTable.addCell(cell2);
PdfPTable innerTable = new PdfPTable(2);
---------------
---------------
innerTable.add("XXX")//add more rows in so that page will overlow
---------------
---------------
cell2 = new PdfPCell(innerTable);
cell2.setBorder(Rectangle.NO_BORDER);
outerTable.addCell(cell2);
如果我知道您使用的是哪个itext版本,那就很简单了。有两个属性
setSplitLate(false)
,setSplitRows(true)
。因此,您必须为这两个表设置这些属性。请参阅文档以了解更多信息。代码看起来更像:
outerTable.setSplitLate(false);
innerTable.setSplitLate(false);
outerTable.setSplitRows(true);
innerTable.setSplitRows(true);
我很久以前在itext 2.1.4中使用过它。因此,请检查当前版本是否支持这些功能。(这就是我要求使用itext版本的原因)设置PdfPTable的拆分行。