iText添加新页面

时间:2010-11-26 11:01:22

标签: java rtf itext

如何在iText文档中添加新页面? document.newPage();似乎不起作用。

我正在使用来自http://sourceforge.net/projects/itextrtf/

的支持RTF的iText

我的部分代码:

Font titleFont = new Font(Font.COURIER, 14, Font.BOLD);
document.add(new Paragraph("Title1", titleFont));

Table table = new Table(4);
table.setBorderWidth(0);

// Filling table

document.add(table);

document.newPage();

document.add(new Paragraph("Title2", titleFont));

Table table = new Table(4);
table.setBorderWidth(0);

// Filling table

document.add(table);

3 个答案:

答案 0 :(得分:10)

编辑 :使用代码重新更新您的问题,以下两者似乎都不适用。如果他们帮助其他人,请离开。

调用newPage告诉iText将后续对象放在新页面上。只有在放置下一个对象时才会实际创建新页面(至少,它对我的​​作用是什么)。此外,如果当前页面不为空,newPage仅创建新页面;否则,它被忽略了;您可以使用setPageBlank(false)来克服这一点。

答案 1 :(得分:0)

iText不再支持RTF,因为相关代码的主要作者转移到其他项目......或者变成了青蛙......或者其他东西。无论如何,我建议你寻找一个新的RTF库,或者自己开始维护它?

无论如何,源是可用的,我怀疑RTFDocument / RTFWriter忽略newPage()。不。 RtfWriter2.java:

/**
 * Adds a page break
 *
 * @return <code>false</code>
 */
public boolean newPage() {
    rtfDoc.add(new RtfNewPage(rtfDoc));
    return true;
}

应该只将“// page”写入输出文件。它在吗?

答案 2 :(得分:0)

问题是我使用的是错误的RTF阅读器,断线就在那里,读者只是没有渲染它。