2009-06-11 6 views

Répondre

4

Oui, absolument. Tout doit être positionné de manière absolue en PDF, de sorte que le flux de texte, l'alignement, etc., demandent plus de travail. iText fait tout ça pour vous si vous le demandez, mais c'est encore plus de travail. Comme Suvesh l'a souligné, PdfStamper fonctionne très bien pour apporter des modifications à un PDF existant. Il est assez simple d'ajouter du texte en position absolue.

Il est également possible de positionner le texte absolument dans un PDF que vous construisez à partir de zéro dans iText. Dans les deux cas, vous devez obtenir un code PdfContentByte. Dans PdfStamper, vous appelez getOverContent(pageNum) ou getUnderContent(pageNum). Avec un PdfWriter, vous appelez simplement getOverContent() ou getUnderContent().

Avec PdfWriter, il vous suffit d'obtenir une fois ou plus le PdfContentByte. Chaque fois qu'il commence une nouvelle page, il va aspirer tout le contenu et réinitialiser l'objet, prêt pour la page suivante.

OTOH, il ne démarre pas de pages bâtiment jusqu'à ce que vous appelez doc.close(), vous devez utiliser un PdfPageEvent (je vous recommande de tirer PdfPageEventHelper) pour écrire sur les pages comme ils sont générés ... pas un problème que vous » ll aura avec un PdfStamper.

Questions connexes