Ich habe diese Anforderung, zwei PDF-Dokumente zusammenführen und legen Sie den angegebenen Rand in das resultierende PDF-Dokument. Gibt es eine Möglichkeit, den aktuellen Seitenrand von PdfReader oder PdfImportedPage zu erhalten? Ich möchte diese Messungen erhalten, um zu entscheiden, ob die Eingabeseite transformiert oder skaliert werden soll.So erhalten Sie aktuelle Seitenränder mit iText API
Antwort
Es gibt wirklich so etwas wie das PDF-Format nicht betroffen ist. Sie haben eine Reihe von Begrenzungsrahmen, die auf einer bestimmten Seite definiert sein können oder nicht. Die einzige erforderliche Box ist die Media Box:
Media Box: Die 'Seitengröße'. Die Größe des Mediums, auf das diese PDF-Seite gedruckt werden soll.
Crop Box: Die Größe der fertigen Seite. Jeder Unterschied zwischen Medien und Erntegut wird in einem Nachbearbeitungsschritt abgeschnitten. Standardmäßig auf die Medienbox eingestellt.
Art Box: Umfasst "den sinnvollen Inhalt der Seite". Standardmäßig auf das Beschnittfeld eingestellt.
Trim Box & Bleed Box: Ähnlich wie die Crop Box, aber nebulös anders, es sei denn, Sie sind eine professionelle Druckerei mit Dingen wie "Rated Speed".
Wenn Sie nicht mit der Art Box Glück haben (und ich wäre schockiert), ist Ihre einzige echte Option, den Inhalt jeder Seite zu analysieren (mit den Klassen in com.itextpdf.text.pdf.parser. *) und DEDUCE die Ränder selbst. Dies ist wahrscheinlich fehleranfällig.
OTOH, wenn eine Anwendung, die ursprünglich die PDF-Datei erstellt hat, ihre Layout-Informationen in die PDF-Datei eingebettet hat. In diesem Fall müssten Sie sie in einer App-by-App (oder sogar Version-by) herausfinden (Version) Basis.
Vielleicht hilft dieses Beispiel: http://itextpdf.com/examples/iia.php?id=280
Es ist in Java, obwohl; nicht sicher, in welchem Kontext Sie sind.
- 1. iText (scharfe) Seitenränder Breite
- 2. Android - So erhalten Sie aktuelle Hintergrundbild Name
- 3. So erhalten Sie das aktuelle Elementattribut
- 4. So erhalten Sie das aktuelle Gebietsschema in GWT mit LocaleInfo
- 5. Erhalten Sie aktuelle Zeit
- 6. So erhalten Sie PayPal-API-Details
- 7. So erhalten Sie aktuelle aktive Thema in Magento 2.0
- 8. Twitter Bootstrap: Wie Seitenränder hinzufügen?
- 9. VB.Net Druck und Seitenränder
- 10. So erhalten Sie die aktuelle Suchleiste während der Eingabe
- 11. So erhalten Sie die aktuelle URL von ASP.NET-Code hinter
- 12. So erhalten Sie aktuelle Suchergebnisse bei der Suche nach Javadoc
- 13. So erhalten Sie die aktuelle Modellinstanz von inlineadmin in Django
- 14. So erhalten Sie das aktuelle Datum im Codezeichner
- 15. jQuery Sortierbar - So erhalten Sie aktuelle Element Element gezogen
- 16. So erhalten Sie aktuelle Modul Objekt vom Modell in Yii2
- 17. So erhalten Sie aktuelle Aktivität von IME-Dienst in Android
- 18. So ersetzen Sie Hyperlink-Text in PDF mit ITEXT
- 19. Lesen Sie pdf mit iText
- 20. So erhalten Sie Daten von Dynamodb mit Rest-API
- 21. So erhalten Sie ein Vendor-Objekt mit Suitetalk Java-API
- 22. Dynamisch erhalten Sie die aktuelle Zeilennummer
- 23. So erstellen Sie iText BaseFont basierend auf InputStream
- 24. So senden Sie Daten an einen API-Aufruf und erhalten sie zurück, mit zillow.com API
- 25. Aktuelle Wochentage mit Daten erhalten
- 26. So erhalten Sie Image Resource
- 27. Seitenränder bei großen Geräten
- 28. Erhalten Sie aktuelle System Kultur Info
- 29. So erhalten Sie Dateisymbol mit C++
- 30. So erhalten Sie eingebettete Kapitelmetadaten mit MediaMetadataRetriever
Danke, ich habe dieses Beispiel versucht und aus irgendeinem Grund sehe ich eine NPE mit einem PDF-Dokument mit Tabellen und Bildern in ihnen. Ich frage mich, ob dieser TextMarginFinder für alle Arten von PDF-Dokumenten verwendet werden könnte. Ich fand auch, dass dieser TextMarginFinder eine neue Ergänzung der iText API ist. –