java - 如果更改单元格高度,则可装箱文本不会出现

标签 java pdfbox boxable

我已经根据 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();

表格看起来不错

image

但是当我想像这样改变单元格高度时

cell.setHeight(5f);

单元格中未绘制内容

image

我尝试更改行高、字体大小,但没有帮助。

你知道如何解决吗?

最佳答案

经过一些调试后,我注意到单元格高度可以这样更改:

cell.setHeight(cell.getTextHeight() + 0.5f);

重要的是选择 cell.getTextHeight() 然后添加您的值,如果您只输入一些数字(例如 12f),它将不起作用

关于java - 如果更改单元格高度,则可装箱文本不会出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59829724/

相关文章:

java - 如何使用原始 JDBC 实现数据访问层而不使用对象关系模型 (ORM)

java - 无法更改 Android 默认 TextToSpeech 中的语言

java - 如何将 PDFBox.jar 集成到 Android 项目中?

java - 如何使用PDFBox 2.0.13在PDF中插入条形码?

java - 如何区分复选框字段和一组单选按钮

java - 如何使用 PDFBox 2 和 Boxable 创建内表?

java - comm.jar 通信串口java

java - 发送对象和线程同步