comment ajouter une image à mon en-tête de la bibliothèque iText PDF généré?

Je suis en utilisant la bibliothèque iText pour générer un fichier PDF. J'ai créé un custom PdfPageEventHelper pour ajouter un en-tête et pied de page) pour chaque page.

Mon problème est que je ne sais pas comment faire pour ajouter l'image afin qu'elle s'affiche dans la "zone en-tête". Je ne sais pas comment ajouter une image sur le contenu du document lui-même (si cela fait sens).

Voici quelques extraits de code ...

public static void main(String[] args) {
  Rectangle headerBox = new Rectangle(36, 54, 559, 788);
  /* ... */
  Document document = new Document(PageSize.A4, 36, 36, 154, 54);
  PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(FILENAME));
  HeaderFooter event = new HeaderFooter();
  writer.setBoxSize("headerBox", headerBox);
  writer.setPageEvent(event);
  document.open();
  addContent();
  document.close();
}

static class HeaderFooter extends PdfPageEventHelper {

  public void onEndPage(PdfWriter writer, Document document) {
    Rectangle rect = writer.getBoxSize("headerBox");
    //add header text
    ColumnText.showTextAligned(writer.getDirectContent(),
      Element.ALIGN_RIGHT, new Phrase("Hello", fontHeader1),
      rect.getLeft(), rect.getTop(), 0);

    //add header image
    try {
      Image img = Image.getInstance("c:/mylogo.PNG");
      img.scaleToFit(100,100);
      document.add(img);
    } catch (Exception x) {
      x.printStackTrace();
    }

  }

}

Des suggestions sur la façon d'ajouter l'image de l'en-tête sont grandement appréciés!!

Rob

Devrait writer dans onEndPage être échangés avec pdfWriter?
C'est une faute de frappe, désolé -- mais merci pour le bon oeil.

OriginalL'auteur Robert Hume | 2012-10-17