给文档添加水印可分为添加文本水印和添加图片水印,在PDF文件中,我们同样也可以添加以上两种水印来实现文档防伪和文档美化。需要使用到 一款第三方免费组件Free Spire.PDF for .NET。文章转载自https://i.cnblogs.com/EditPosts.aspx?postid=4913603,详细信息可查看原文 。
组件使用说明:1.下载安装该组件2.添加引用该组件DLL文件到项目中3.添加相应的命名空间
一、添加文本水印
主要代码
- //创建一个PdfDoucment类对象并从文件中加载需要添加水印的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");
- 添加文本效果后:
二、图片水印
主要代码:
- //创建一个PdfDocumment类对象并从文件加载文档
- PdfDocument pdf = new PdfDocument();
- pdf.LoadFromFile("sample.pdf");
- //获取PDF文档第一页
- PdfPageBase page = pdf.Pages[0];
- //加载图片并将图片设置PDF文件背景
- Image img = Image.FromFile("img.jpg");
- page.BackgroundImage = img;
- //保存文档
- pdf.SaveToFile("ImageWaterMark.pdf");