Java iText PdfPTable 大于 6 列
Java iText PdfPTable larger than 6 columns
我想修改一个由 iText 生成的 table 以增加一列。
但是当我改变构造函数参数时:
PdfPTable table = new PdfPTable(6);
至:
PdfPTable table = new PdfPTable(7);
并像我对其他栏目一样向其中添加内容:
cell1 = new PdfPCell(new Phrase(name));
cell1.setHorizontalAlignment(Element.ALIGN_CENTER);
table.addCell(cell1);
生成的 PDF 中不存在 table。这是为什么?我猜它不适合文档宽度?
假设这有效(我知道它确实有效):
PdfPTable table = new PdfPTable(6);
table.addCell("1");
table.addCell("2");
table.addCell("3");
table.addCell("4");
table.addCell("5");
table.addCell("6");
document.add(table);
在这种情况下,将添加单行 6 列的 table。
如果您像这样更改此代码段,将不会添加 table:
PdfPTable table = new PdfPTable(7);
table.addCell("1");
table.addCell("2");
table.addCell("3");
table.addCell("4");
table.addCell("5");
table.addCell("6");
document.add(table);
不会添加此table,因为其中只有一行,不呈现不完整的行。
你有两个选择,要么添加:
table.completeRow();
或者您添加:
table.addCell("7");
就在将 table
添加到 document
之前。
没有理由可以添加 6 列的 table 而不是 7 列的 table。宽度不是问题:如果您没有为列定义绝对宽度,那么 iText 将自动计算每列的确切宽度。
我不知道我是否有一个包含 7 列的 table 的文档,但我确实有一个包含 8 列的 table 的示例:请参阅 SimpleTable example and simple_table.pdf.
我想修改一个由 iText 生成的 table 以增加一列。
但是当我改变构造函数参数时:
PdfPTable table = new PdfPTable(6);
至:
PdfPTable table = new PdfPTable(7);
并像我对其他栏目一样向其中添加内容:
cell1 = new PdfPCell(new Phrase(name));
cell1.setHorizontalAlignment(Element.ALIGN_CENTER);
table.addCell(cell1);
生成的 PDF 中不存在 table。这是为什么?我猜它不适合文档宽度?
假设这有效(我知道它确实有效):
PdfPTable table = new PdfPTable(6);
table.addCell("1");
table.addCell("2");
table.addCell("3");
table.addCell("4");
table.addCell("5");
table.addCell("6");
document.add(table);
在这种情况下,将添加单行 6 列的 table。
如果您像这样更改此代码段,将不会添加 table:
PdfPTable table = new PdfPTable(7);
table.addCell("1");
table.addCell("2");
table.addCell("3");
table.addCell("4");
table.addCell("5");
table.addCell("6");
document.add(table);
不会添加此table,因为其中只有一行,不呈现不完整的行。
你有两个选择,要么添加:
table.completeRow();
或者您添加:
table.addCell("7");
就在将 table
添加到 document
之前。
没有理由可以添加 6 列的 table 而不是 7 列的 table。宽度不是问题:如果您没有为列定义绝对宽度,那么 iText 将自动计算每列的确切宽度。
我不知道我是否有一个包含 7 列的 table 的文档,但我确实有一个包含 8 列的 table 的示例:请参阅 SimpleTable example and simple_table.pdf.