當利用iText簽署PDF文檔與外部簽名,我要準備空白簽名集裝箱第一:的Java iText的跡象PDF與外部簽名 - 集裝箱大小估計
PdfReader reader = new PdfReader(src);
FileOutputStream os = new FileOutputStream(dest);
PdfStamper stamper = PdfStamper.createSignature(reader, os, '\0');
PdfSignatureAppearance appearance = stamper.getSignatureAppearance();
appearance.setVisibleSignature(rectangle, 1, fieldName);
appearance.setCertificate(chain[0]);
ExternalSignatureContainer external = new ExternalBlankSignatureContainer(PdfName.ADOBE_PPKLITE, PdfName.ADBE_PKCS7_DETACHED);
MakeSignature.signExternalContainer(appearance, external, 8192);
的MakeSignature.signExternalContainer(appearance, external, 8192);
最後一個參數是estimatedSize
- 中預留的簽名大小。
如果PDF有例如10000字節,而estimatedSize
設置爲10000字節,而實際簽名容器有1000字節,則生成的PDF的大小將爲原始PDF + estimatedSize
,而不是大小原始PDF +簽名容器的大小,可能會更大。
有沒有什麼辦法可以準確計算estimatedSize
參數以避免簽名PDF大小的增加?
或者有什麼先決條件能夠計算簽名的確切大小?
是否有其他方式使用iText簽署PDF文檔以避免這種情況?