C# 如何添加PDF水印
程序员文章站
2022-03-27 19:56:03
...
添加水印可分为添加文本水印和添加图片水印两种,本篇文章将介绍如何通过使用免费组件Free Spire.PDF for .NET来实现水印添加。本文转自http://www.cnblogs.com/Yesi/p/4913603.html
1.添加图片水印
//实例化一个PdfDocument类实例,并加载PDF 文档 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("sample.pdf"); //获取PDF第一页 PdfPageBase page = pdf.Pages[0]; //加载图片,并设置为水印 Image img = Image.FromFile("img.jpg"); page.BackgroundImage = img; //保存到文件 pdf.SaveToFile("ImageWaterMark.pdf");
添加图片水印后的文档:
2.添加文本水印
//创建一个PdfDocument类对象,并加载PDF文档 PdfDocument pdf= new PdfDocument(); pdf.LoadFromFile("sample.pdf"); //获取PDF第一页 PdfPageBase page = pdf.Pages[0]; //添加文本水印到文件的第一页,设置文本格式 PdfTilingBrush brush = new PdfTilingBrush(new SizeF(page.Canvas.ClientSize.Width / 2, page.Canvas.ClientSize.Height / 3)); brush.Graphics.SetTransparency(0.3f); brush.Graphics.Save(); brush.Graphics.TranslateTransform(brush.Size.Width / 2, brush.Size.Height / 2); brush.Graphics.RotateTransform(-45); brush.Graphics.DrawString("Draft Version", new PdfFont(PdfFontFamily.Helvetica, 24), PdfBrushes.Blue,0, 0, new PdfStringFormat(PdfTextAlignment.Center)); brush.Graphics.Restore(); brush.Graphics.SetTransparency(1); page.Canvas.DrawRectangle(brush, new RectangleF(new PointF(0, 0), page.Canvas.ClientSize)); //保存文档 pdf.SaveToFile("TextWaterMark.pdf");
添加文本水印后的文档: