0

In the code below, you can see that I overrode OnEndPage event and tried to add a paragraph to the document. However, I get an "System.StackOverflowException" error when attempting to run the code. Does anyone have any idea why this is happening and how can I fix it?

public override void OnEndPage(PdfWriter writer, Document document)
{
    base.OnEndPage(writer, document);
    Paragraph p = new Paragraph("Paragraph");
    document.Add(p);
}
Christoph Fink
  • 22,727
  • 9
  • 68
  • 113

1 Answers1

2

It is forbidden to use document.Add() in a page event. The document object passed as a parameter is actually a PdfDocument object. You should use it for read-only purposes only. This is documented in my book iText in Action - Second Edition.

If you want to add content in the OnEndPage method, you need the writer, for instance writer.DirectContent.

Bruno Lowagie
  • 75,994
  • 9
  • 109
  • 165