服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C# - 在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

2022-10-10 15:19伍华聪 C#

这篇文章主要介绍了在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

在一些场合,我们往往需要使用印章来给每页文档加盖一个印章,以表示该文档经过某个部门的认证的,常规的做法就是打印文档后盖章,如果需要电子档再行扫描一下。这样的处理,如果文档很多,且仅仅需要电子文档的就很麻烦了,需要打印再盖章再扫描,而且电子文档往往有失真的问题。本篇随笔介绍如何在在Winform程序中使用Spire.Pdf实现页面添加印章处理,解决这一痛处。

1、在PDF增加印章处理

首先我们来了解下,用Adobe Acrobat Reader 进行文档的印章处理下,看看如何实现的,后面再用软件实现自动的添加。

印章的来源,我们需要一个图片格式的印章。那么我们可以通过盖章到白纸上,然后拍照进行抠图,把图片弄成PNG的透明图片,也可以使用在线的印章生成工具生成图片,然后在进行适当的加工。

在做图章之前,我们先用Photoshop处理好图片,并保存图片为PDF格式的文件。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

首先用Adobe Acrobat Reader打开一个PDF文档,然后找到对也给你的工具选项卡,选择图章功能,如下图所示。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

然后会切换到文档的自定义图章功能上,如下所示。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

然后选择创建自定义图章,导入刚才做好的PDF格式图片印章即可。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

印章创建好后,就可以在文档中调用印章模板进行添加了,也就是调用印章调板处理。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

拖动到文档的任意位置即可实现电子印章的添加了,添加后的文档界面效果如下所示。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

2、在Winform程序中使用Spire.Pdf实现页面添加印章处理

以上是通过手工操作,在Adobe Acrobat Reader上添加印章,并给PDF文档指定位置添加印章的过程,这样的处理,已经可以减少电子档的扫描失真问题,并可以减少很多繁琐的工作。但是如果我们每次都要给很多文档页面添加这样的印章处理,也是很繁琐的事情,那么我们这里就可以编写一个程序,用程序是给每个页面指定位置盖章即可。

我们知道Spire.Pdf是对PDF操作非常不错的一个组件,我们可以利用它来实现我们对这些PDF创建印章和盖章的处理过程。

我们在Winform开发框架模块的综合案例里面,添加一个Demo页面,然后实现这个功能展示一下。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

整个代码其实不复杂,如下代码所示。

private void btnAddImageSign_Click(object sender, EventArgs e)
{
string signPdf = Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Examples/PdfDemo/TestSign2.pdf");
string signImage = Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Examples/PdfDemo/印章.png");

PdfDocument doc = new PdfDocument();
doc.LoadFromFile(signPdf);

//每页都添加印章
foreach (PdfPageBase page in doc.Pages)
{
PdfRubberStampAnnotation loStamp = new PdfRubberStampAnnotation(new RectangleF(new PointF(400, 600), new SizeF(120, 120)));
PdfAppearance loApprearance = new PdfAppearance(loStamp);
PdfImage image = PdfImage.FromFile(signImage);

PdfTemplate template = new PdfTemplate(160, 160);
template.Graphics.DrawImage(image, 0, 0);
loApprearance.Normal = template;
loStamp.Appearance = loApprearance;

page.AnnotationsWidget.Add(loStamp);
}

//保存文档
var fileSave = FileDialogHelper.SavePdf("ImageStamp.pdf", System.AppDomain.CurrentDomain.BaseDirectory);
if(!string.IsNullOrEmpty(fileSave))
{
doc.SaveToFile(fileSave);
Process.Start(fileSave);
}
}

最后页面的效果如下所示,在每页的指定位置,都盖章我们的印章了。

在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现

以上处理,就是在Winform程序中使用Spire.Pdf实现页面添加印章处理,可以减轻我们实际工作的繁琐操作。

到此这篇关于在Winform程序中使用Spire.Pdf实现页面添加印章功能的实现的文章就介绍到这了,更多相关Winform实现页面添加印章内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.cnblogs.com/wuhuacong/archive/2020/09/22/13712543.html

延伸 · 阅读

精彩推荐
  • C#DataGridView带图标的单元格实现代码

    DataGridView带图标的单元格实现代码

    这篇文章主要为大家详细介绍了DataGridView带图标的单元格的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    云梦鸿3832022-01-19
  • C#C# 10个常用特性汇总

    C# 10个常用特性汇总

    这篇文章主要介绍了C# 10个常用特性,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下...

    一傻小冲5612022-09-23
  • C#Unity调用打印机打印图片

    Unity调用打印机打印图片

    这篇文章主要为大家详细介绍了Unity通过调用打印机打印图片的代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一...

    月夜风雨磊10042022-08-08
  • C#C#读写txt文件的2种方法

    C#读写txt文件的2种方法

    这篇文章主要为大家详细介绍了C#读写txt文本文档数据的2种方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    Jerron Lu6402022-01-25
  • C#Mongodb在CSharp里实现Aggregate实例

    Mongodb在CSharp里实现Aggregate实例

    本篇文章主要介绍了Mongodb在CSharp里实现Aggregate实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    张占岭9082022-01-05
  • C#详解C#中的委托

    详解C#中的委托

    本文主要介绍了C#中委托的相关知识。具有一定的参考价值,下面跟着小编一起来看下吧...

    邹琼俊8902021-12-18
  • C#Visual Studio 2019配置vue项目的图文教程详解

    Visual Studio 2019配置vue项目的图文教程详解

    这篇文章主要介绍了Visual Studio 2019配置vue项目的教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作,具有一定的参考借鉴价值...

    夏子曦8552022-08-29
  • C#C#多线程之线程控制详解

    C#多线程之线程控制详解

    这篇文章主要为大家详细介绍了C#多线程之线程控制的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    云梦鸿5022022-01-19