Itext 在分页符的文本中处理页面事件

Itext 在分页符的文本中处理页面事件,itext,Itext,我使用itext生成pdf,想知道当元素超过页面大小时,幕后会发生什么 我使用PdfPageEventHelper来了解在这种情况下是否添加了新页面 生成的pdf显示一个新页面,但不会触发事件的函数,如onStartPage、onEndPage。我使用的是PdfPageEventHelper,我没有遇到任何问题。触发新页面时,在初始化新页面之前调用onEndPage方法,在初始化新页面之后调用onStartPage方法 您可以在代码中触发一个新页面,如下所示: document.newPage(

我使用itext生成pdf,想知道当元素超过页面大小时,幕后会发生什么

我使用PdfPageEventHelper来了解在这种情况下是否添加了新页面

生成的pdf显示一个新页面,但不会触发事件的函数,如onStartPage、onEndPage。

我使用的是PdfPageEventHelper,我没有遇到任何问题。触发新页面时,在初始化新页面之前调用onEndPage方法,在初始化新页面之后调用onStartPage方法

您可以在代码中触发一个新页面,如下所示:

document.newPage();
或者可以隐式触发newPage方法,例如,当您使用document.add添加超过页面大小的内容时

无法验证您关于onEndPage和onStartPage等功能未触发的指控。相反,我们有大量的例子证明了这一点,其中一些被捆绑在书中

在评论中,您说您对NEWPAGE和NEXTPAGE之间的差异有疑问。这是一个非常奇怪的问题,因为我不知道你为什么需要这些东西

Chunk.NEXTPAGE是一种特殊的块,由iText在内部使用。它可以通过添加对象来调用newPage方法

例如:

document.add(Chunk.NEXTPAGE);
相当于:

document.newPage();
后一种方法是触发新页面的首选方法,NEXTPAGE对象在非常特定的用例中内部使用

至于Chunk.NEWPAGE,这只是一个字符串,它的值是NEWPAGE。此字符串是用于标识下一页区块的属性键


这是iText的内部厨房。作为iText用户,您不必担心。

向我们展示您的代码。有很多例子证明onStartPage和onEndPage是被触发的。请看中的页面事件部分,以获取一些示例。我再次尝试了它,发现它可以正常工作,但仍然有一个关于NEWPAGE和NEXTPAGE之间区别的问题