“OnEndPage”事件处理程序中的“’System.StackOverflowException”
在下面的代码中,您可以看到我覆盖了OnEndPage
事件并尝试在文档中添加一个段落。 但是,尝试运行代码时出现“System.StackOverflowException”错误。 有谁知道为什么会这样,我该如何解决?
public override void OnEndPage(PdfWriter writer, Document document) { base.OnEndPage(writer, document); Paragraph p = new Paragraph("Paragraph"); document.Add(p); }
禁止在页面事件中使用document.Add()
。 作为参数传递的document
对象实际上是PdfDocument
对象。 您应该仅将其用于只读目的。 这在我的书iText in Action – Second Edition中有记载。
如果要在OnEndPage
方法中添加内容,则需要writer.DirectContent
,例如writer.DirectContent
。