2016-08-03 42 views
1

In Java würde ich gerne in der Lage sein, eine PDF-Datei einzulesen, zu testen, ob PDF/A (PDF for Archiving) kompatibel ist, und falls nicht, dann konvertieren Sie die Datei nach PDF/A.Wie konvertiert man PDF zu PDF/A in Java

Ich könnte dies in Apache PDFBox bevorzugen, weil ich schon ein paar Dinge in dieser API gemacht habe, aber ich wäre offen für andere APIs.

+0

Welche PDF/A-Flavors möchten Sie konvertieren? Einige sind schwierig, wie @ Tilmans Antwort erklärt, und andere sind noch schwieriger, besonders wenn keine menschliche Hilfe erforderlich sein sollte ... – mkl

Antwort

4

Testen Sie, ob eine PDF-Datei PDF/A-1b ist, können Sie das PDFBox-Preflight verwenden, siehe Beispiel here oder verwenden Sie die Preflight-App.

Erstellen eines Tools zum Konvertieren einer Datei von PDF zu PDF/A ist eine schwierige Aufgabe, die Monate, möglicherweise Jahre dauern würde. Wenn Sie sich den Quellcode des PDFBox-Preflights ansehen, finden Sie Hunderte von Fehlermeldungen. Ihr Tool müsste also in der Lage sein, jeden dieser Fehler zu beheben. Einige sind:

  • nicht eingebettete Schriften
  • Verwendung von Farbe ohne Output Intent
  • falsche Metadaten
  • JBIG2 kodierte Bild
  • LZW codierten Daten

Überprüfen Sie einfach ein paar Ihre eigenen Dateien mit PDFBox Preflight, und Sie werden eine Vielzahl von Problemen sehen ...

Wenn Sie keine Monate oder Jahre haben, besuchen Sie die Homepages Callas Software GmbH oder PDF Tools AG, um einen solchen Konverter zu kaufen.

+0

Ich möchte Tilman nachfragen. Es geht nicht nur um die technischen Schritte, sondern auch darum, dass die PDF- und PDF/A-Spezifikation gut verstanden wird. Es gab mehrere Diskussionen darüber, wie die Spezifikationen der verschiedenen Anbieter zu lesen und zu interpretieren sind, die sich in ihren Tools widerspiegeln. Obwohl Sie PDFBox verwenden können, um eine Conversion zu erstellen, ist es möglicherweise (kosten) effektiver, einen Converter zu kaufen und einzurichten. Beachten Sie, dass es nicht immer möglich ist, ein beliebiges PDF in PDF/A zu konvertieren –