我想知道如何使用 iText java 库或其他库从签名的 pdf 文档中获取原始内容。
谢谢
更新1:
可能的例子:
PdfReader reader = new PdfReader(PATH_TO_PDF);
AcroFields fields = reader.getAcroFields();
ArrayList<String> signatures = fields.getSignatureNames();
for (String signature : signatures)
{
// Start revision extraction
ByteArrayOutputStream out = new ByteArrayOutputStream();
byte bb[] = new byte[8192];
InputStream ip = fields.extractRevision(signature);
int n = 0;
while ((n = ip.read(bb)) > 0)
out.write(bb, 0, n);
out.close();
ip.close();
MessageDigest md = MessageDigest.getInstance("SHA1");
byte[] resum = md.digest(out.toByteArray());
// End revision extraction
}
Run Code Online (Sandbox Code Playgroud)
注1:在本例中,当有多个标志时,所有标志都实现了。
注2:但hash不等于原始hash文档(未签名的文档)