养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

C# 在PDF中添加不可见数字签名

时间:2024-10-21 19:40:14

以下经验内容分享在C#程序中如何给PDF文档添加不可见数字签名的方法,即添加签名时不在文档中指定签名位置,在文档正文中不显示相关数字签名信息。下面是具体步骤及方法。另附vb.net代码,有需要可供参考。

工具/原料

.netframework4.6.1

VisualStudio2017

PDF类库Spire.PDFfor.NET7.8.2

.pfx数字证书及密钥

引用dll

1、在VS程序中通过Nuget安装Spire.PDFfor.NET版本7.8.2,安装步骤如下:鼠标右键点击“引用”,“管理Nuget包”

C# 在PDF中添加不可见数字签名

2、点击“浏览”,在搜索框中输入“Spire.PDF”,点击选择搜索到的包,点击“安装”。

C# 在PDF中添加不可见数字签名

3、在弹出的窗口点击“OK”

C# 在PDF中添加不可见数字签名

4、等待安装完成。安装结果如图:

C# 在PDF中添加不可见数字签名

C#代码

1、usingSpire.Pdf;using讵症慧鹱Spire.Pdf.Interactive.DigitalSignatures;usingSystem.Security.潮贾篡绐Cryptography.X509Certificates;namespaceInvisibleDigitalSignature{classProgram{staticvoidMain(string[]args){//初始化一个PdfDocument实例PdfDocumentpdf=newPdfDocument();//加载PDF文档pdf.LoadFromFile("test.pdf");//添加签名X509Certificate2x509=newX509Certificate2(@"cer.pfx","123456");PdfOrdinarySignatureMakersignatureMaker=newPdfOrdinarySignatureMaker(pdf,x509);signatureMaker.MakeSignature("signName");signatureMaker.SetLocation("Chengdu");signatureMaker.SetReason("Editlimited");//保存文档pdf.SaveToFile("result.pdf",FileFormat.PDF);System.Diagnostics.Process.Start("result.pdf");}}}

2、执行程序,生成文档,如图效果:

C# 在PDF中添加不可见数字签名

vb.net代码

1、ImportsSpire.PdfImportsS圬桦孰礅pire.Pdf.Interactive.DigitalSignaturesI罪焐芡拂mportsSystem.Security.Cryptography.X509CertificatesNamespaceInvisibleDigitalSignatureClassProgramPrivateSharedSubMain(argsAsString())'初始化一个PdfDocument实例DimpdfAsNewPdfDocument()'加载PDF文档pdf.LoadFromFile("test.pdf")'添加签名Dimx509AsNewX509Certificate2("cer.pfx","123456")DimsignatureMakerAsNewPdfOrdinarySignatureMaker(pdf,x509)signatureMaker.MakeSignature("signName")signatureMaker.SetLocation("Chengdu")signatureMaker.SetReason("Editlimited")'保存文档pdf.SaveToFile("result.pdf",FileFormat.PDF)System.Diagnostics.Process.Start("result.pdf")EndSubEndClassEndNamespace

© 一点知识