iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >C#中怎么给PDF 添加可视化和不可见数字签名
  • 364
分享到

C#中怎么给PDF 添加可视化和不可见数字签名

2023-06-20 21:06:57 364人浏览 泡泡鱼
摘要

这期内容当中小编将会给大家带来有关C#中怎么给pdf 添加可视化和不可见数字签名,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 在VS程序中通过Nuget安装 Spire.PDF for .net 版

这期内容当中小编将会给大家带来有关C#中怎么给pdf 添加可视化和不可见数字签名,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。


1. 在VS程序中通过Nuget安装 Spire.PDF for .net 版本7.8.2,安装步骤如下:

鼠标右键点击“引用”,“管理Nuget包”

C#中怎么给PDF 添加可视化和不可见数字签名

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

C#中怎么给PDF 添加可视化和不可见数字签名

在弹出的窗口点击“OK”

C#中怎么给PDF 添加可视化和不可见数字签名

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

C#中怎么给PDF 添加可视化和不可见数字签名

2.在VS程序中添加如下代码添加数字签名

2.1 添加可视化数字签名

C#

using Spire.Pdf;using Spire.Pdf.Graphics;using Spire.Pdf.Interactive.DigitalSignatures;using System.Drawing;using System.Security.Cryptography.X509Certificates;namespace VisibleDigitalSignature{    class Program    {        static void Main(string[] args)        {            //加载PDF测试文档            PdfDocument pdf = new PdfDocument();            pdf.LoadFromFile("test.pdf");            //获取PDF文档中的第5页            PdfPageBase page = pdf.Pages[4];            //在页面中的指定位置添加可视化签名            X509Certificate2 x509 = new X509Certificate2("cer.pfx", "e-iceblue");            PdfOrdinarySignatureMaker signatureMaker = new PdfOrdinarySignatureMaker(pdf, x509);            IPdfSignatureAppearance signatureAppearance = new PdfCustomSignatureAppearance();                        signatureMaker.MakeSignature("signName_" , page, page.ActualSize.Width-240,page.ActualSize.Height-200,150,150, signatureAppearance);            //保存文档            pdf.SaveToFile("VisibleDigitalSignature.pdf", FileFORMat.PDF);            System.Diagnostics.Process.Start("VisibleDigitalSignature.pdf");            pdf.Close();                       }        public class PdfCustomSignatureAppearance : IPdfSignatureAppearance        {            public void Generate(Pdfcanvas g)            {                float fontSize = 15;                PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Arial", fontSize), true);                float lineHeight = fontSize; g.DrawString("Sign Here:", font, PdfBrushes.Black, new PointF(0, 0));                g.DrawImage(PdfImage.FromFile("sign.png"), new PointF(20, 20));            }        }    }}

VB.NET

Imports Spire.PdfImports Spire.Pdf.GraphicsImports Spire.Pdf.Interactive.DigitalSignaturesImports System.DrawingImports System.Security.Cryptography.X509CertificatesNamespace VisibleDigitalSignature    Class Program        Private Shared Sub Main(args As String())            '加载PDF测试文档            Dim pdf As New PdfDocument()            pdf.LoadFromFile("test.pdf")            '获取PDF文档中的第5页            Dim page As PdfPageBase = pdf.Pages(4)            '在页面中的指定位置添加可视化签名            Dim x509 As New X509Certificate2("cer.pfx", "e-iceblue")            Dim signatureMaker As New PdfOrdinarySignatureMaker(pdf, x509)            Dim signatureAppearance As IPdfSignatureAppearance = New PdfCustomSignatureAppearance()            signatureMaker.MakeSignature("signName_", page, page.ActualSize.Width - 240, page.ActualSize.Height - 200, 150, 150, _                signatureAppearance)            '保存文档            pdf.SaveToFile("VisibleDigitalSignature.pdf", FileFormat.PDF)            System.Diagnostics.Process.Start("VisibleDigitalSignature.pdf")            pdf.Close()        End Sub        Public Class PdfCustomSignatureAppearance            Implements IPdfSignatureAppearance            Public Sub Generate(g As PdfCanvas)                Dim fontSize As Single = 15                Dim font As New PdfTrueTypeFont(New Font("Arial", fontSize), True)                Dim lineHeight As Single = fontSize                g.DrawString("Sign Here:", font, PdfBrushes.Black, New PointF(0, 0))                g.DrawImage(PdfImage.FromFile("sign.png"), New PointF(20, 20))            End Sub        End Class    End ClassEnd Namespace

可视化数字签名效果:

C#中怎么给PDF 添加可视化和不可见数字签名

2.2 添加不可见数字签名

C#

using Spire.Pdf;using Spire.Pdf.Interactive.DigitalSignatures;using System.Security.Cryptography.X509Certificates;namespace InvisibleDigitalSignature{    class Program    {        static void Main(string[] args)        {            //初始化一个PdfDocument实例            PdfDocument pdf = new PdfDocument();            //加载PDF文档            pdf.LoadFromFile("test.pdf");            //添加签名            X509Certificate2 x509 = new X509Certificate2("cer.pfx", "e-iceblue");            PdfOrdinarySignatureMaker signatureMaker = new PdfOrdinarySignatureMaker(pdf, x509);            signatureMaker.MakeSignature("signName");            signatureMaker.SetLocation("Chengdu");            signatureMaker.SetReason("Edit limited");                                   //保存文档            pdf.SaveToFile("result.pdf", FileFormat.PDF);            System.Diagnostics.Process.Start("result.pdf");        }    }}

Vb.net

Imports Spire.PdfImports Spire.Pdf.Interactive.DigitalSignaturesImports System.Security.Cryptography.X509CertificatesNamespace InvisibleDigitalSignature    Class Program        Private Shared Sub Main(args As String())            '初始化一个PdfDocument实例            Dim pdf As New PdfDocument()            '加载PDF文档            pdf.LoadFromFile("test.pdf")            '添加签名            Dim x509 As New X509Certificate2("cer.pfx", "e-iceblue")            Dim signatureMaker As New PdfOrdinarySignatureMaker(pdf, x509)            signatureMaker.MakeSignature("signName")            signatureMaker.SetLocation("Chengdu")            signatureMaker.SetReason("Edit limited")            '保存文档            pdf.SaveToFile("result.pdf", FileFormat.PDF)            System.Diagnostics.Process.Start("result.pdf")        End Sub    End ClassEnd Namespace

不可见数字签名效果:

C#中怎么给PDF 添加可视化和不可见数字签名

上述就是小编为大家分享的C#中怎么给PDF 添加可视化和不可见数字签名了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网精选频道。

--结束END--

本文标题: C#中怎么给PDF 添加可视化和不可见数字签名

本文链接: https://www.lsjlt.com/news/300102.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#中怎么给PDF 添加可视化和不可见数字签名
    这期内容当中小编将会给大家带来有关C#中怎么给PDF 添加可视化和不可见数字签名,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 在VS程序中通过Nuget安装 Spire.PDF for .NET 版...
    99+
    2023-06-20
  • C#和vb.net实现PDF 添加可视化和不可见数字签名
    目录1. 在VS程序中通过Nuget安装 Spire.PDF for .NET 版本7.8.2,安装步骤如下:2.在VS程序中添加如下代码添加数字签名2.1 添加可视化数字签名2.2...
    99+
    2024-04-02
  • Java怎么给PDF签名时添加可信时间戳
    这篇文章主要讲解了“Java怎么给PDF签名时添加可信时间戳”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java怎么给PDF签名时添加可信时间戳”吧!一、程序运行环境编译环境:Intell...
    99+
    2023-06-20
  • 怎么用Java实现添加、验证PDF数字签名
    这篇文章主要讲解了“怎么用Java实现添加、验证PDF数字签名”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Java实现添加、验证PDF数字签名”吧!目录Jar文件获取及导入方法:在设...
    99+
    2023-06-20
  • C#中命名参数和可选参数怎么应用
    这篇“C#中命名参数和可选参数怎么应用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#中命名参数和可选参数怎么应用”文章吧...
    99+
    2023-06-30
  • 怎么在R语言中分析和可视化时间序列数据
    在R语言中分析和可视化时间序列数据通常使用ts(时间序列对象)或xts(扩展时间序列对象)包来处理。以下是一些常见的步骤: 导入时...
    99+
    2024-03-04
    R语言
  • R语言中怎么进行空间数据的分析和可视化
    在R语言中进行空间数据的分析和可视化通常使用到专门的空间数据处理包,比如sp、rgdal、raster、sf等。以下是一个简单的例子...
    99+
    2024-04-12
    R语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作