半岛权威十大直营(官方)网站

PDF控件Spire.PDF for .NET【安全】演示:从 PDF 中删除数字签名字段

原创|行业资讯|编辑:胡涛|2024-01-19 10:55:32.857|阅读 30 次

概述:在本文中,您将了解如何使用 C#、VB.NET 从 PDF 中删除所有数字签名,欢迎查阅~

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

相关链接:

作为一个综合性的PDF组件,Spire.PDF支持对PDF进行数字签名、在PDF中嵌入证书以及删除现有PDF文档中的签名。在本文中,您将了解如何使用 C#、VB.NET 从 PDF 中删除所有数字签名。

Spire.PDF for .NET 是一款独立 PDF 控件,用于 .NET 程序中创建、编辑和操作 PDF 文档。使用 Spire.PDF 类库,开发人员可以新建一个 PDF 文档或者对现有的 PDF 文档进行处理,且无需安装 Adobe Acrobat。

E-iceblue 功能类库Spire 系列文档处理组件均由中国本土团队研发,不依赖第三方软件,不受其他国家的技术或法律法规限制,同时适配国产操作系统如中科方德、中标麒麟等,兼容国产文档处理软件 WPS(如 .wps/.et/.dps 等格式

Spire.PDF for.net下载   Spire.PDF for java下载

测试文件:

如何使用 C#、VB.NET 从 PDF 中删除数字签名字段

代码片段:

步骤 1:创建一个新的 PdfDocument 对象并加载测试文件。

PdfDocument pdf = new PdfDocument("test.pdf");

步骤 2:从 PDF 获取加载的表单。

PdfFormWidget widgets = pdf.Form as PdfFormWidget;

步骤 3:获取归档收藏列表,判断每个归档是否为签名归档。如果是,请使用PdfFieldCollection.RemoveAt(int index)方法删除签名字段。

for (int i = 0; i < widgets.FieldsWidget.List.Count; i++)
{
PdfFieldWidget widget = widgets.FieldsWidget.List[i] as PdfFieldWidget;
if (widget is PdfSignatureFieldWidget)
{
widgets.FieldsWidget.RemoveAt(i);
}
}

步骤 4:保存并启动结果文件。

pdf.SaveToFile("result.pdf");
System.Diagnostics.Process.Start("result.pdf");

结果

如何使用 C#、VB.NET 从 PDF 中删除数字签名字段

完整代码:

【C#】

using Spire.Pdf;
using Spire.Pdf.Widget;

namespace RemoveDigitalSignature
{
class Program
{
static void Main(string[] args)
{
PdfDocument pdf = new PdfDocument("test.pdf");

PdfFormWidget widgets = pdf.Form as PdfFormWidget;
for (int i = 0; i < widgets.FieldsWidget.List.Count; i++)
{
PdfFieldWidget widget = widgets.FieldsWidget.List[i] as PdfFieldWidget;
if (widget is PdfSignatureFieldWidget)
{
widgets.FieldsWidget.RemoveAt(i);
}
}

pdf.SaveToFile("result.pdf");
System.Diagnostics.Process.Start("result.pdf");
}
}
}

【VB.NET】

Imports Spire.Pdf
Imports Spire.Pdf.Widget

Namespace RemoveDigitalSignature
Class Program
Private Shared Sub Main(args As String())
Dim pdf As New PdfDocument("test.pdf")
Dim widgets As PdfFormWidget = TryCast(pdf.Form, PdfFormWidget)
For i As Integer = 0 To widgets.FieldsWidget.List.Count - 1
Dim widget As PdfFieldWidget = TryCast(widgets.FieldsWidget.List(i), PdfFieldWidget)
If TypeOf widget Is PdfSignatureFieldWidget Then

widgets.FieldsWidget.RemoveAt(i)
End If
Next

pdf.SaveToFile("result.pdf")
System.Diagnostics.Process.Start("result.pdf")
End Sub
End Class
End Namespace

以上便是如何在 C#/VB.NET 中从 PDF 中删除数字签名字段,如果您有其他问题也可以继续浏览本系列文章,获取相关教程,你还可以给我留言或者加入我们的官方技术交流群。


欢迎下载|体验更多E-iceblue产品

获取更多信息请咨询  ;技术交流Q群(767755948)


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@wqylolg.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP