Я пытаюсь подписать страницу документа цифровой подписью. Это логически правильно? В настоящее время подпись идет только на одной странице. Я что-то делаю не так?
PdfReader reader = new PdfReader(src);
FileOutputStream os = new FileOutputStream(dest);
PdfStamper stamper = PdfStamper.createSignature(reader, os, '\0');
// Creating the appearance
PdfSignatureAppearance appearance = stamper.getSignatureAppearance();
appearance.setLocation(location);
appearance.setCertificationLevel(PdfSignatureAppearance.CERTIFIED_NO_CHANGES_ALLOWED);
appearance.setVisibleSignature(new Rectangle(44, 170, 144, 221), 1, "sig");
appearance.setVisibleSignature(new Rectangle(44, 170, 144, 221), 7, "sig");
// Creating the signature
ExternalSignature pks = new PrivateKeySignature(pk, digestAlgorithm, provider);
ExternalDigest digest = new BouncyCastleDigest();
MakeSignature.signDetached(appearance, digest, pks, chain, crlList,ocspClient, tsaClient, estimatedSize,subfilter);
Интегрированная подпись PDF всегда охватывает всю редакцию документа, но предназначена только для одной визуализации. Есть несколько методов добавления нескольких визуализаций для одной подписи, некоторые прямо нарушают спецификацию PDF, некоторые просто ее дух.




Ознакомьтесь с методом
sign()здесь, в примере iText: github.com/itext/i7js-samples/blob/develop/publications/…