我正在开发一个Java应用程序,该程序必须处理包含PDF / A文件的文件夹,并使用Apache的PDFBox库为每个文件添加一个包含一些信息的页面。问题在于添加信息后的输出PDF文件不再是PDF / A。这是来自以下网站的验证测试:https://www.pdf-online.com/osa/validate.aspx:
这是我用来生成PDF文件的代码的相关部分:
String pdfFileName = this.baseFolder+this.extendedPDFFileName;
File file = new File(pdfFileName);
PDDocument pdfFile = PDDocument.load(file);
PDPage pag = new PDPage();
// As a test, simply adding a page makes the PDF unvalid as PDF/A
pdfFile.addPage(pag);
pdfFile.save(file);
pdfFile.close();
如何保持PDF / A格式的有效性?预先感谢,
答案 0 :(得分:1)
正如Tilman Hausherr所建议的那样,已通过在新页面中添加PDResources
对象来解决该问题,如下所示:
pag.setResources(new PDResources());
现在我在嵌入字体方面遇到了麻烦,但这是另一个问题:)
非常感谢!
答案 1 :(得分:0)
您在代码中创建了一个普通的PDF,您应该从一开始就创建一个有效的PDF / A。 这是链接:https://pdfbox.apache.org/1.8/cookbook/pdfacreation.html