首页 > 编程 > C# > 正文

如何使用C#在PDF文件添加图片印章

2019-10-29 21:15:14
字体:
来源:转载
供稿:网友

文档中添加印章可以起一定的作用,比如,防止文件随意被使用,或者确保文档内容的安全性和权威性。C#添加图片印章其实也有很多实现方法,这里我使用的是免费的第三方软件Free Spire.PDF,向大家阐述如何以编程的方式在PDF文件中添加图片印章。

具体步骤如下:

在此之前,我们需要添加dll文件作为引用。添加引用 → 浏览 → Spire.XLS folder → Bin → .NET 2.0/3.5/4.0/4.5/4.0 ClientProfile → Spire.XLS.dll.

第一步:首先新建一个PDF文档对象并加载要添加印章的文档。

PdfDocument doc = new PdfDocument();doc.LoadFromFile(@"E:/Visual Studio/Sample/template7/sample.pdf");

第二步:获取文档的第一页。

PdfPageBase page = doc.Pages[0];

第三步:新建一个PdfRubberStampAnnotation对象,指定其注释的范围和大小。

PdfRubberStampAnnotation loStamp = new PdfRubberStampAnnotation(new RectangleF(new PointF(-5,-5), new SizeF(60, 60))); 

第四步:实例化一个PdfAppearance对象。  

PdfAppearance loApprearance = new PdfAppearance(loStamp);

第五步:加载用作印章的图片。

PdfImage image = PdfImage.FromFile(@"C:/Users/Administrator/Pictures/sample.jpg");

第六步:新建一个PDF模板,并在模板里绘制图片。

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

第7步:在PDF文档添加印章。

page.AnnotationsWidget.Add(loStamp);

第八步:保存文档。

string output = "ImageStamp.pdf";doc.SaveToFile(output); 

运行前的pdf文档:

C#,PDF,图片印章

运行后的pdf文档:

C#,PDF,图片印章

全部代码:

using System;using System.Drawing;using System.Windows.Forms;using Spire.Pdf;using Spire.Pdf.Annotations;using Spire.Pdf.Annotations.Appearance;using Spire.Pdf.Graphics;namespace addanimagestamptoaPDF_file{  public partial class Form1 : Form  {    public Form1()    {      InitializeComponent();    }    private void button1_Click(object sender, EventArgs e)    {      PdfDocument doc = new PdfDocument();      doc.LoadFromFile(@"E:/Visual Studio/Sample/template7/sample.pdf");       PdfPageBase page = doc.Pages[0];            PdfRubberStampAnnotation loStamp = new PdfRubberStampAnnotation(new RectangleF(new PointF(-5, -5), new SizeF(60, 60)));      PdfAppearance loApprearance = new PdfAppearance(loStamp);      PdfImage image = PdfImage.FromFile(@"C:/Users/Administrator/Pictures/sample.jpg");       PdfTemplate template = new PdfTemplate(160, 160);      template.Graphics.DrawImage(image, 0,0);      loApprearance.Normal = template;      loStamp.Appearance = loApprearance;              page.AnnotationsWidget.Add(loStamp);      string output = "ImageStamp.pdf";      doc.SaveToFile(output);      }  }}

通过此组件,我们除了可以快速地在PDF文件中添加图片印章,还可以在PDF文件中添加图片和文字水印以及添加图片背景,可以参考一下,也许对你有帮助。谢谢浏览。

 

注:相关教程知识阅读请移步到c#教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表