com.lowagie.text.pdf

## Interface PdfPageEvent

- All Known Implementing Classes:
    FieldPositioningEvents, IndexEvents, PdfPageEventForwarder, PdfPageEventHelper

      public interface PdfPageEvent

  Allows a class to catch several document events.

  Note: do not use Document.add() inside a page event.

  Author:
    Paulo Soares (psoares@consiste.pt)

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `onChapter(PdfWriter writer, Document document, float paragraphPosition, Paragraph title)` Called when a Chapter is written.
    `void` | `onChapterEnd(PdfWriter writer, Document document, float paragraphPosition)` Called when the end of a Chapter is reached.
    `void` | `onCloseDocument(PdfWriter writer, Document document)` Called when the document is closed.
    `void` | `onEndPage(PdfWriter writer, Document document)` Called when a page is finished, just before being written to the document.
    `void` | `onGenericTag(PdfWriter writer, Document document, Rectangle rect, java.lang.String text)` Called when a `Chunk` with a generic tag is written.
    `void` | `onOpenDocument(PdfWriter writer, Document document)` Called when the document is opened.
    `void` | `onParagraph(PdfWriter writer, Document document, float paragraphPosition)` Called when a Paragraph is written.
    `void` | `onParagraphEnd(PdfWriter writer, Document document, float paragraphPosition)` Called when a Paragraph is written.
    `void` | `onSection(PdfWriter writer, Document document, float paragraphPosition, int depth, Paragraph title)` Called when a Section is written.
    `void` | `onSectionEnd(PdfWriter writer, Document document, float paragraphPosition)` Called when the end of a Section is reached.
    `void` | `onStartPage(PdfWriter writer, Document document)` Called when a page is initialized.

- - ### Method Detail

    - #### onOpenDocument

          void onOpenDocument(PdfWriter writer,
                            Document document)

      Called when the document is opened.
      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document

    - #### onStartPage

          void onStartPage(PdfWriter writer,
                         Document document)

      Called when a page is initialized.

      Note that if even if a page is not written this method is still called. It is preferable to use `onEndPage` to avoid infinite loops.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document

    - #### onEndPage

          void onEndPage(PdfWriter writer,
                       Document document)

      Called when a page is finished, just before being written to the document.
      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document

    - #### onCloseDocument

          void onCloseDocument(PdfWriter writer,
                             Document document)

      Called when the document is closed.

      Note that this method is called with the page number equal to the last page plus one.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document

    - #### onParagraph

          void onParagraph(PdfWriter writer,
                         Document document,
                         float paragraphPosition)

      Called when a Paragraph is written.

      `paragraphPosition` will hold the height at which the paragraph will be written to. This is useful to insert bookmarks with more control.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `paragraphPosition` - the position the paragraph will be written to

    - #### onParagraphEnd

          void onParagraphEnd(PdfWriter writer,
                            Document document,
                            float paragraphPosition)

      Called when a Paragraph is written.

      `paragraphPosition` will hold the height of the end of the paragraph.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `paragraphPosition` - the position of the end of the paragraph

    - #### onChapter

          void onChapter(PdfWriter writer,
                       Document document,
                       float paragraphPosition,
                       Paragraph title)

      Called when a Chapter is written.

      `position` will hold the height at which the chapter will be written to.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `paragraphPosition` - the position the chapter will be written to
        `title` - the title of the Chapter

    - #### onChapterEnd

          void onChapterEnd(PdfWriter writer,
                          Document document,
                          float paragraphPosition)

      Called when the end of a Chapter is reached.

      `position` will hold the height of the end of the chapter.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `paragraphPosition` - the position the chapter will be written to

    - #### onSection

          void onSection(PdfWriter writer,
                       Document document,
                       float paragraphPosition,
                       int depth,
                       Paragraph title)

      Called when a Section is written.

      `position` will hold the height at which the section will be written to.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `paragraphPosition` - the position the section will be written to
        `depth` - the number depth of the section
        `title` - the title of the section

    - #### onSectionEnd

          void onSectionEnd(PdfWriter writer,
                          Document document,
                          float paragraphPosition)

      Called when the end of a Section is reached.

      `position` will hold the height of the section end.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `paragraphPosition` - the position the section will be written to

    - #### onGenericTag

          void onGenericTag(PdfWriter writer,
                          Document document,
                          Rectangle rect,
                          java.lang.String text)

      Called when a `Chunk` with a generic tag is written.

      It is useful to pinpoint the `Chunk` location to generate bookmarks, for example.

      Parameters:
        `writer` - the `PdfWriter` for this document
        `document` - the document
        `rect` - the `Rectangle` containing the `Chunk`
        `text` - the text of the tag