2012-01-10 9 views
3

J'ai la situation suivante: Je crée un PDF qui contient une table avec des données avec un nombre de lignes aléatoire imprévisible. À la fin de chaque page, j'ai mis le numéro de la page en cours avec iText PdfPageEventHelper, en utilisant l'événement onEndPage. Cela fonctionne bien. Le problème: Il est possible que la dernière page soit presque vide car, après avoir commencé à écrire une nouvelle page, il y a seulement quelques lignes ou une seule ligne de la table de données qui reste à écrire? Je veux remplir cette région de la dernière page avec des lignes vides jusqu'au bas de cette page. Comment puis-je remplir automatiquement la zone vide de la dernière page avec des lignes vides? Je suppose ne peut pas utiliser:Comment remplir la dernière page du document PDF avec iText?

OnEndPage (écrivain PdfWriter document document)

à cette fin?

+0

Avez-vous besoin du numéro de page dans la zone Pied de page/bas, ou avez-vous vraiment besoin de remplir le document avec des lignes vides? – oers

+0

Désolé si je ne suis pas clair. La dernière page doit contenir des lignes vides et en plus le pied de page avec le numéro de page. Le numéro de page fonctionne déjà sur chaque page. – sterub

Répondre

1

Vous pouvez utiliser getVerticalPosition pour déterminer l'espace restant dans le document et utiliser l'arithmétique pour déterminer le nombre de lignes que vous devrez créer pour remplir la page. Dans votre méthode onEndPage, vous pouvez créer les lignes d'une table et utiliser writeSelectedRows pour écrire les lignes dans le document.

+0

Merci, c'est exactement ce que je cherche – sterub

Questions connexes