java - 如何重置 iText 中的段落

标签 java pdf itext

我正在使用iText在java中创建pdf 在我们看来,一切都按照我的想法工作,除了当我使用循环时,我正在使用的段落似乎保存了我存储在其中的所有数据。更清楚一点,这就是我想做的:

PdfPTable table = new PdfPTable();


for(int k=0; k < 3; k++){

Paragraph leftPar = new Paragraph();

leftPar.add(new Paragraph("\n List Object " + k, topicFont));

table_cell = new PdfPCell(leftPar)
table.addCell(table_cell);    
}

我想要的表输出是:

List Object 0
-------------
List Object 1
-------------
List Object 2

但我得到的输出是:

List Object 0
-------------
List Object 0
List Object 1
-------------
List Object 0
List Object 1
List Object 2
-------------

我必须将信息放在不同的单元格中,所以我的问题是,当我声明 leftpar = new 段落时,它会创建它的一个新实例,但它似乎保留了我添加的其他内容。我什至尝试过 leftPar = null;然后 leftpar = 新段落 还是什么都没有?有什么想法吗?

谢谢!

最佳答案

答案是表本身保存了所有其他信息。所以我不得不使用方法flushContent();在循环结束时,将表格添加到文档后。

table.flushContent(); 

关于java - 如何重置 iText 中的段落,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13673040/

相关文章:

java - 如何使用 iText/Sharp 从 AcroFields 获取 TextField?

java - 如何在 codenameone 中使所有可滑动容器具有相同的高度?

java - 迁移到Gradle,但是Gradle信息在项目中给出

java - Angularjs UI Bootstrap Popover 阻止输入提交

java - 一行中不能声明超过 2 个数组

PDF 隐藏对象

pdf - Open Type 字体中的字形宽度

java - 使用itext将文本文件转换为pdf时设置编码

java - 如何旋转页面而不是 iText 中的文本?

java - 在java中使用itext对齐PDF中的内容