【发布时间】:2018-08-12 21:23:12
【问题描述】:
我尝试将我的 iText5 代码移植到 iText7 中。我设法签署了一份未签名的 pdf,但签署已签署的文件时遇到了一些麻烦。
我简化了代码。下面将一些有趣的东西放入我的 pdf 中。代码:
using (var os = new MemoryStream())
{
var pdfSigner = new ExtendedPdfSigner(new PdfReader(new MemoryStream(File.ReadAllBytes(@"C:\Users\x\Desktop\signed.pdf"))), os, true);
var external = new ExternalBlankSignatureContainer(PdfName.Adobe_PPKLite, PdfName.Adbe_pkcs7_detached);
pdfSigner.SignExternalContainer(external, 8192);
File.WriteAllBytes(@"C:\Users\x\Desktop\tempFile.pdf", os.ToArray());
}
它还在第一个签名中显示“文档有后续更改”消息。
我不知道这是否是一个错误,但我什至在 7.1.3 快照中尝试过。
【问题讨论】:
-
this question 有帮助吗?
-
@stuartd 不。已经检查过了。
-
你的
ExtendedPdfSigner类与 itextPdfSigner有什么不同? -
@mkl
GetRangeStream方法是protected,所以我通过ExtendedPdfSigner提供了它。如果使用PdfSigner,结果将是相同的..
标签: c# digital-signature itext7