我想在行和列中显示记录集。正在获取输出,但事实是,它正在重叠。我应该修改循环吗?
ArrayList<ResultRecord> Records = new ArrayList<ResultRecord>(MainRestClient.fetchResultRecords(this.savedMainLog));
for(j=0; j<Records.size(); j++)
{
Row<PDPage> row4 = table.createRow(100.0f);
Cell<PDPage> cell10 = row4.createCell(15.0f, temp.getNumber());
Cell<PDPage> cell11 = row4.createCell(45.0f, temp.getDescription());
Cell<PDPage> cell12 = row4.createCell(15.0f, temp.getStatus());
Cell<PDPage> cell13 = row4.createCell(25.0f, temp.getRemarks());
}
以下是打开PDF文件的完整代码。我想检索相应单元格中row4中的记录集。但是,一个被覆盖在另一个之上。
预期产量:
IT应该在另一个下方显示。
是重叠的原因,是因为将行定义为row4。
try {
//table.draw();
cell.setFontSize(12);
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
最佳答案
首先,您应该弄清您使用的表格图形库。 PDFBox仅是基础PDF库。考虑到使用的类,我假设您在其之上使用Boxable。
此外,将所有表格相互打印的原因是,您可以在同一页面的同一位置启动每个表格,
BaseTable table = new BaseTable(yPosition, yStartNewPage,
bottomMargin, tableWidth, margin, document, page, true, drawContent);
无需更改
yPosition
或page
。要获得一张一张又一张一张的桌子,您必须相应地更新
yPosition
和page
,例如然后使用table.draw()
的返回值和table
的状态,即通过替换table.draw();
通过
yPosition = table.draw();
page = table.getCurrentPage();