如何拆分内部表的行。根据图像的问题描述。
所以,如果我使用一个页面制作这个表,它就能完美运行。但是,如果我需要在不同的页面中拆分表格,它会显示像image_2这样的错误。请帮帮我。 结果:即使页面分成两页或更多页,该表应该与image_1类似。
请查看提到的图片以便更清楚。
尝试在空对象引用上读取字段'float com.itextpdf.text.pdf.ColumnText.maxY'
答案 0 :(得分:0)
我刚刚找到了解决方案。只有在尝试将PDFPTable拆分为两个页面时才会出现此问题。我曾经使用过 tableCell.setRowspan(2),所以在尝试拆分上面的表时会出现问题。
解决它:我刚用一个空单元代替使用 tableCell.setRowspan(2)。
private PdfPTable contentWithDateTitleAndDescription(String stringData1, String stringData2, String stringData3, String stringData4) throws IOException, BadElementException {
float relativeWidth[] = {2, 7};
PdfPTable table = new PdfPTable(relativeWidth);
table.setWidthPercentage(100);
PdfPCell cellA = new PdfPCell();
cellA.setBorder(Rectangle.NO_BORDER);
// dateCell.setRowspan(2);
cellA.setPaddingLeft(15);
cellA.setVerticalAlignment(Element.ALIGN_CENTER);
cellA.setPaddingTop(7);
Paragraph dateParagraph = new Paragraph(stringData1);
cellA.addElement(dateParagraph);
PdfPCell emptyCellB = new PdfPCell();
emptyCellB.setBorder(Rectangle.NO_BORDER);
PdfPCell cellC = new PdfPCell();
cellC.setBorder(Rectangle.NO_BORDER);
cellC.setVerticalAlignment(Element.ALIGN_LEFT);
Paragraph titleParagraph = new Paragraph(stringData2 + " / " + stringData3);
cellC.addElement(titleParagraph);
PdfPCell cellD = new PdfPCell();
cellD.setBorder(Rectangle.NO_BORDER);
cellD.setVerticalAlignment(Element.ALIGN_LEFT);
Paragraph descriptionParagraph = new Paragraph(stringData4);
cellD.addElement(descriptionParagraph);
cellD.setPaddingBottom(15);
table.addCell(cellA);
table.addCell(cellC);
table.addCell(emptyCellB);
table.addCell(cellD);
return table;
}