我正在尝试使用Java中的IText 7创建一个pdf文档。但是,表格内容未显示在pdf中。
代码段:
private void addReceiptDetails(Document doc) {
Table table = new Table(2, true);
table.addCell(new Cell().add("C1"));
table.addCell(new Cell().add("C2"));
for (TaxTypeModel taxType : sale.getTaxModel().getTaxTypeModelList()) {
table.addCell(new Cell().add("C9"));
table.addCell(new Cell().add("C10"));
}
table.addCell(new Cell().add("C3"));
table.addCell(new Cell().add("C4"));
table.addCell(new Cell().add("C5"));
table.addCell(new Cell().add("C6"));
table.addCell(new Cell().add("C7"));
table.addCell(new Cell().add("C8"));
doc.add(table);
table.complete();
doc.close();
}
PDF表格内容:
有人可以帮帮我。我不确定这里到底出了什么问题。
编辑:我尝试了here的代码示例:
Table table = new Table(8);
for (int i = 0; i < 16; i++) {
table.addCell("hi");
}
doc.add(table);
这也只是创建空单元格。
答案 0 :(得分:0)
我无法重现您的问题。
我运行了明显更改的代码:
for
循环,因为我在这里没有TaxTypeModel
。即。像这样:
try ( OutputStream result = new FileOutputStream("simpleTableRahulDevMishra.pdf");
PdfWriter writer = new PdfWriter(result);
PdfDocument pdfDocument = new PdfDocument(writer);
Document doc = new Document(pdfDocument) )
{
Table table = new Table(2, true);
table.addCell(new Cell().add("C1"));
table.addCell(new Cell().add("C2"));
/*
for (TaxTypeModel taxType : sale.getTaxModel().getTaxTypeModelList()) {
table.addCell(new Cell().add("C9"));
table.addCell(new Cell().add("C10"));
}
*/
table.addCell(new Cell().add("C3"));
table.addCell(new Cell().add("C4"));
table.addCell(new Cell().add("C5"));
table.addCell(new Cell().add("C6"));
table.addCell(new Cell().add("C7"));
table.addCell(new Cell().add("C8"));
doc.add(table);
table.complete();
doc.close();
}
结果在Adobe Reader中显示如下:
因此,问题的原因不在您提供的代码中。因此,请提供允许重现您的问题的代码。
尝试使用其他代码示例重现该问题
Table table = new Table(8);
for (int i = 0; i < 16; i++) {
table.addCell("hi");
}
doc.add(table);
也导致细胞含量: