我正在尝试使用 PdfBox 实现一个 java pdf-a 验证器。我正在处理的文件是数字签名的 pdf (PADES)。我使用 pdfbox 或在线工具,结果是:
PreflightDocument document = parser.getPreflightDocument();
document.validate();
1.1 : Header Syntax error, First line must match %PDF-1.\d
1.1 : Header Syntax error, Second line must begin with '%' followed by at least 4 bytes greater than 127
1.0 : Syntax error, Missing end of file marker '%%EOF'
但是当我用任何阅读器打开文件时,它的格式确实是 pdf-a。看一看 pdf 文件,实际上第一行不是 %PDF-1,也不是最后一个 %%EOF。可能是因为 pdf 已签名。可以吗?以防万一,我怎样才能在签名的 pdf 中克服这种验证?
0ƒ;f *†H†÷
ƒ;V0ƒ;Q10
`†He
ƒ;‡=ƒ;‡8%PDF-1.4
%ÿÿÿÿ
1 0 obj
<<
...
....
.....
注意第 4 行末尾的“%PDF-1.4”