【发布时间】:2019-10-10 06:44:43
【问题描述】:
我没有保存文件然后对其进行签名,而是使用内存流中的压模填充数据字段。
MemoryStream fs = GetSaarForm();
PdfReader.unethicalreading = true;
PdfReader reader = new PdfReader(fs.ToArray(), null);
string pwd = "";
if (string.IsNullOrEmpty(pwd))
pwd = System.Web.Security.Membership.GeneratePassword(20, 5);
using (MemoryStream ms = new MemoryStream())
{
using (PdfStamper stamper = new PdfStamper(reader, ms, '\0', false))
{
stamper.SetEncryption(
null,
System.Text.Encoding.UTF8.GetBytes(pwd),
PdfWriter.ALLOW_PRINTING | PdfWriter.ALLOW_COPY,
PdfWriter.ENCRYPTION_AES_128);
AcroFields form = stamper.AcroFields;
StampSaarPdf(form, candidate, saar);
}
//SaveSaarPassword(candidateId, pwd);
return ms.ToArray();
}
标记各个字段在方法中。但是签名是个问题。它们必须看起来像附件。
我查看了人们完成签名的所有方式,但我不明白我是如何做到这一点的。这是 DOD CAC 签名。有没有人有任何想法?我必须在表格中填写四个单独的签名。我将签名字段更改为纯文本框。
【问题讨论】:
-
您需要使用 DoD CAC 卡中的
X509Certificate2。 -
“我将签名字段更改为纯文本框” - 如果要对文档进行签名,为什么要将签名字段更改为文本框?
标签: c# asp.net-mvc itext cac