文檔中添加印章可以起一定的作用,比如,防止文件隨意被使用,或者確保文檔內容的安全性和權威性。C#添加圖片印章其實也有很多實現方法,這里我使用的是免費的第三方軟件Free Spire.PDF for .NET,向大家闡述如何以編程的方式在PDF文件中添加圖片印章。
具體步驟如下:
在此之前,我們需要添加dll文件作為引用。添加引用 → 瀏覽 → Spire.PDF folder → Bin → .NET 2.0/3.5/4.0/4.5/4.0 ClientProfile → Spire.Pdf.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文檔:
運行后的pdf文檔:
全部代碼:

1 using System; 2 using System.Drawing; 3 using System.Windows.Forms; 4 using Spire.Pdf; 5 using Spire.Pdf.Annotations; 6 using Spire.Pdf.Annotations.Appearance; 7 using Spire.Pdf.Graphics; 8 9 namespace addanimagestamptoaPDF_file 10 { 11 public partial class Form1 : Form 12 { 13 public Form1() 14 { 15 InitializeComponent(); 16 } 17 18 private void button1_Click(object sender, EventArgs e) 19 { 20 PdfDocument doc = new PdfDocument(); 21 doc.LoadFromFile(@"E:\Visual Studio\Sample\template7\sample.pdf"); 22 23 PdfPageBase page = doc.Pages[0]; 24 25 PdfRubberStampAnnotation loStamp = new PdfRubberStampAnnotation(new RectangleF(new PointF(-5, -5), new SizeF(60, 60))); 26 PdfAppearance loApprearance = new PdfAppearance(loStamp); 27 PdfImage image = PdfImage.FromFile(@"C:\Users\Administrator\Pictures\sample.jpg"); 28 29 PdfTemplate template = new PdfTemplate(160, 160); 30 template.Graphics.DrawImage(image, 0,0); 31 loApprearance.Normal = template; 32 loStamp.Appearance = loApprearance; 33 34 page.AnnotationsWidget.Add(loStamp); 35 36 string output = "ImageStamp.pdf"; 37 doc.SaveToFile(output); 38 39 } 40 } 41 }
通過此組件,我們除了可以快速地在PDF文件中添加圖片印章,還可以在PDF文件中添加圖片和文字水印以及添加圖片背景,可以參考一下,也許對你有幫助。謝謝瀏覽。