2010-11-17 31 views
1

J'ai cette exigence pour fusionner deux documents PDF et définir la marge spécifiée dans le document pdf résultant. Existe-t-il un moyen d'obtenir la forme actuelle de la page en format PdfReader ou PdfImportedPage? Je voudrais obtenir ces mesures pour décider s'il faut transformer ou mettre à l'échelle la page d'entrée.Comment obtenir les marges de page en cours avec l'API iText

Répondre

4

Il n'y a vraiment rien de tel en ce qui concerne le format PDF. Vous avez un tas de boîtes de délimitation qui peuvent ou peuvent ne pas être définies sur une page donnée. La seule boîte requise est la Media Box:

Media Box: Le 'format de page'. La taille du support de cette page PDF doit être imprimée. Crop Box: La taille de la page finie.

Toute différence entre le média et la culture sera coupée dans une étape de post-traitement. Par défaut à la boîte de média.

Art Box: Englobe «le contenu significatif de la page». Par défaut à la boîte de recadrage. Boîte de garniture: similaire à la boîte de recadrage, mais nébuleuse différente, sauf si vous êtes une maison d'impression professionnelle préoccupé par des choses comme "Vitesse nominale". À moins que vous n'ayez de la chance avec l'Art Box (et je serais choqué), votre seule vraie option est d'analyser le contenu de chaque page (avec les classes dans com.itextpdf.text.pdf.parser. *) et DEDUCE les marges vous-même. Ceci est susceptible d'être sujet à erreur. OTOH, si l'application qui a à l'origine fait le PDF pourrait avoir intégré ses informations de mise en page dans le PDF, auquel cas vous auriez besoin de savoir comment ils l'ont fait sur une application par application (ou même version par -version) base.

0

Peut-être que cet exemple aide: http://itextpdf.com/examples/iia.php?id=280
C'est en Java, cependant; Vous ne savez pas dans quel contexte vous vous trouvez.

+0

Merci, j'ai essayé cet exemple et pour une raison quelconque, je vois un NPE avec un document PDF avec des tables et des images. Je me demande si ce TextMarginFinder pourrait être utilisé pour toutes sortes de documents PDF. J'ai également trouvé que ce TextMarginFinder est un nouvel ajout à l'API iText. –