我已经根据 https://github.com/dhorions/boxable/wiki 中的示例创建了 BaseTable
float margin = 50;
float yStartNewPage = myPage.getMediaBox().getHeight() - (2 * margin);
float tableWidth = myPage.getMediaBox().getWidth() - (2 * margin);
boolean drawContent = true;
float yStart = yStartNewPage;
float bottomMargin = 70;
float yPosition = 550;
BaseTable table = new BaseTable(yPosition, yStartNewPage, bottomMargin, tableWidth, margin, mainDocument, myPage, true, drawContent);
Row<PDPage> headerRow = table.createRow(15f);
Cell<PDPage> cell = headerRow.createCell(100, "Header");
table.addHeaderRow(headerRow);
Row<PDPage> row = table.createRow(12);
cell = row.createCell(30, "Data 1");
cell = row.createCell(70, "Some value");
table.draw();
contentStream.close();
mainDocument.addPage(myPage);
mainDocument.save("testfile.pdf");
mainDocument.close();
表格看起来不错
但是当我想像这样改变单元格高度时
cell.setHeight(5f);
单元格中未绘制内容
我尝试更改行高、字体大小,但没有帮助。
你知道如何解决吗?
最佳答案
经过一些调试后,我注意到单元格高度可以这样更改:
cell.setHeight(cell.getTextHeight() + 0.5f);
重要的是选择 cell.getTextHeight()
然后添加您的值,如果您只输入一些数字(例如 12f),它将不起作用
关于java - 如果更改单元格高度,则可装箱文本不会出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59829724/