PDF Signature
Documentize PDF Signature for .NET 插件允许用户对 PDF 文档进行数字签名。它提供了一个简化的过程,用于添加签名,确保真实性和保护 PDF 内容。该插件支持可见签名和不可见签名,并提供选项来定制签名的位置、理由、联系信息等。
如何签署 PDF 文档
要使用 PFX 文件签署 PDF 文档,请遵循以下步骤:
- 创建
Signature
类的实例。 - 使用 PFX 文件路径和密码实例化
SignOptions
类。 - 将输入 PDF 和输出文件添加到选项中。
- 运行
Process
方法以应用签名。
1
2var signature = new Signature();
3var signOptions = new SignOptions(@"C:\certificates\myCertificate.pfx", "pfxPassword");
4
5// 添加输入 PDF 并指定输出文件
6signOptions.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
7signOptions.AddOutput(new FileDataSource(@"C:\Samples\signedOutput.pdf"));
8
9// 配置签名选项
10signOptions.Reason = "合同协议";
11signOptions.Contact = "johndoe@example.com";
12signOptions.Location = "纽约";
13signOptions.PageNumber = 1;
14signOptions.Visible = true;
15signOptions.Rectangle = new Rectangle(100, 100, 200, 150);
16
17// 将签名应用于文档
18signature.Process(signOptions);
如何使用流对 PFX 文件进行签名
您还可以使用作为流提供的 PFX 证书签署 PDF,而不是使用文件路径。这允许更灵活地处理证书存储。
- 创建
Signature
类的实例。 - 使用包含 PFX 和密码的流实例化
SignOptions
。 - 添加输入和输出文件。
- 运行
Process
方法以应用签名。
1
2using var pfxStream = File.OpenRead(@"C:\certificates\myCertificate.pfx");
3var signature = new Signature();
4var signOptions = new SignOptions(pfxStream, "pfxPassword");
5
6// 添加输入和输出文件
7signOptions.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
8signOptions.AddOutput(new FileDataSource(@"C:\Samples\signedOutput.pdf"));
9
10// 应用签名
11signature.Process(signOptions);
如何应用不可见签名
要添加不可见签名(即在不显示签名的情况下保护文档),只需将 Visible
属性设置为 false
。
- 创建
SignOptions
的实例。 - 将
Visible
设置为false
。 - 添加输入和输出文件。
- 调用
Process
以应用不可见签名。
1
2var signature = new Signature();
3var signOptions = new SignOptions(@"C:\certificates\myCertificate.pfx", "pfxPassword");
4
5// 配置不可见签名
6signOptions.Visible = false;
7
8// 添加输入和输出文件
9signOptions.AddInput(new FileDataSource(@"C:\Samples\input.pdf"));
10signOptions.AddOutput(new FileDataSource(@"C:\Samples\invisiblySigned.pdf"));
11
12// 处理签名
13signature.Process(signOptions);
主要特点:
- 数字签名 PDF 文档:使用可见或不可见的数字签名来保护您的文档。
- PFX 支持:使用 PFX 证书签署 PDF 文件。
- 可定制选项:配置签名设置,如理由、位置和联系信息。
- 可见和不可见签名:选择签名是否在文档上可见。