C# Spire.PDF 实现pdf文件盖章

通过Spire.PDF实现合同盖章,社区版dll(免费,但是只支持10页以内的pdf文档),也可以直接通过VS管理NuGet包添加dll引用,
收费版直接搜索Spire.PDF安装,免费社区版搜索FreeSpire.PDF安装

在这里插入图片描述

参数定义与调用

string pdfPath = "C:\\Users\\Administrator\\Desktop\\2月份工作报告.pdf";
string imagePath = "C:\\Users\\Administrator\\Desktop\\图片\\20230314161221.jpg";
string outputPath = "C:\\Users\\Administrator\\Desktop\\测试签名文件.pdf";
CreateSign(pdfPath, imagePath, outputPath, 400, 650);

具体盖章实现

		/// <summary>
        ///  pdf盖章
        ///  Spire.PDF——收费商用版
        ///  FreeSpire.PDF——免费社区版,但只支持10页以内的pdf文件
        /// </summary>
        /// <param name="pdfPath">源Pdf文件地址</param>
        /// <param name="imagePath">盖章图片地址</param>heng'xiang
        /// <param name="outputPath">盖章后重新生成的pdf地址</param>
        /// <param name="driftX">盖章图片横向偏移</param>
        /// <param name="driftY">盖章图片竖向偏移</param>
        /// <returns></returns>
        public static void CreateSign(string pdfPath, string imagePath, string outputPath, float driftX, float driftY)
        {
            //创建一个PdfDocument类对象,并加载PDF文档
            Spire.Pdf.PdfDocument doc = new Spire.Pdf.PdfDocument();
            doc.LoadFromFile(pdfPath);
            //文档最后一页
            Spire.Pdf.PdfPageBase page = doc.Pages[doc.Pages.Count - 1];
            //新建一个PdfRubberStampAnnotation对象,指定其注释的位置和大小
            Spire.Pdf.Annotations.PdfRubberStampAnnotation loStamp =
            new Spire.Pdf.Annotations.PdfRubberStampAnnotation(
                new System.Drawing.RectangleF(
                    //盖章偏移
                    new System.Drawing.PointF(driftX, driftY),
                    //盖章图片大小
                    new System.Drawing.SizeF(80, 80))
                );
            //实例化一个PdfAppearance对象,并加载作为印章的图片
            Spire.Pdf.Annotations.Appearance.PdfAppearance loApprearance = new Spire.Pdf.Annotations.Appearance.PdfAppearance(loStamp);
            Spire.Pdf.Graphics.PdfImage image = Spire.Pdf.Graphics.PdfImage.FromFile(imagePath);
            //新建一个PDF模板,并在模板里绘制图片
            Spire.Pdf.Graphics.PdfTemplate template = new Spire.Pdf.Graphics.PdfTemplate(150, 150);
            template.Graphics.DrawImage(image, 0, 0);
            loApprearance.Normal = template;
            loStamp.Appearance = loApprearance;
            //添加印章到PDF文档
            page.AnnotationsWidget.Add(loStamp);
            //保存文档
            doc.SaveToFile(outputPath);
            //直接打开文档
            System.Diagnostics.Process.Start(outputPath);
        }

最终效果图
最终效果图

–仅个人记录,不喜勿喷

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Free Spire.PDF for .NET 是 Spire.PDF for .NET 的免费版本,无需购买即可用于个人或商业用途。使用该组件,程序员可以 在.NET 程序中创建、读取、写入、编辑和操作 PDF 文档。这个控件能支持的功能十分全面,例如文档安全性设置(电子签名),提取 PDF 文本、附件、图片,PDF 合并和拆分,更新 Metadata,设置 Section,绘制图形、插入图片、表格制作和加工、导入数据等等。除此以外,Spire.PDF 还可以将 TXT 文本、图片、HTML 高质量地转换为 PDF 文件格式。 主要功能如下: 1.高质量的文档转换。Free Spire.PDF for .NET 支持 PDF 到 Word、XPS、SVG、EMF、Text 和图片(EMF、JPG、PNG、BMP、TIFF)的格式转换。也支持从 XML、HTML、RTF、XPS、Text、图片等格式生成 PDF 文档。 2.文档操作及域功能。支持合并、拆分 PDF 文档,在原有的 PDF 文档页添加覆盖页。同时,Spire.PDF 提供导入、邮戳、小册子功能,以及帮助用户从数据库读取数据并填充到域的域填写功能。 3. 安全性设置。用户可以通过设置密码和数字签名来保护 PDF 文档。用户密码和所有者密码可以确定加密的 PDF 文档的可读性、可修改性、是否可打印等有选择性的限制。与此同时,数字签名作为一个更有效的方法,可以应用于维护和对PDF文档进行身份验证。 4.数据提取。支持快速高效地从 PDF 文档提取图片、文本、PDF 分页,以及附件。 5.文件属性设置。支持对 Metadata、文件属性、页面方向、页面大小进行设置。其中文件属性包括文件限制(打印、页面提取、加评论等方面的权限限制)以及文件描述属性(文件名称、作者、主题、关键字等)。使用 Spire.PDF for .NET,用户还可以根据自己阅读喜好设定默认打开页码,分页模式,缩放比例和打印缩放,等等。 6.其他功能。 支持多种语言,支持字体格式、对齐方式设置。 绘制文字,图片,图形。 支持添加图层,透明图像,Color Space,条形码到 PDF。 支持 PDF/A-1b、PDF/x1a:2001 格式。 添加梯状图形和矢量图像到指定位置。 添加并格式化表格。 插入交互元素,例如添加自定义的 Annotation、Action、JavaScript、附件、书签等。
Free Spire.PDFViewer for .NET 是 Spire.PDFViewer for .NET 的免费版本,使用 Free Spire.PDFViewer,程序员可以在 WinForm 程序中加载并查看 PDF 文档。浏览 PDF 时,用户可以自由设置浏览选项,比如:自动适应纸张/自动适应窗口,上一页/下一页,放大/缩小,等等。Free Spire.PDFViewer 支持浏览含多种元素的 PDF,这些元素包括超链接,字体(TrueType, Type 0, Type 1, Type 3, OpenType and CJK font),图形,表格, Device-Dependent Color Spaces, DCT,JPEG2000 等图片格式。 此外,该控件还支持纵向、横向和自动打印文档,支持将 PDF 保存为多种流行的图片格式(.bmp, .png, .jpeg)。作为一款独立的 PDF 查看组件,Free Spire.PDFViewer 的运行不依赖 Adobe Reader 及其他任何第三方软件。 主要功能点: 1.从文件,流,字节数组读取文档 2.加载浏览加密的 PDF 文档 3.设置浏览选项(页面跳转,缩放,自适应页面大小,旋转,单页或多页显示) 4.显示缩略图 5.识别书签目录及跳转到目标位置 6.存取附件到本地硬盘 7.支持多种打印方式:横向,纵向,自动 8.保存为图片(.bmp, .png, .jpeg) 9.支持多种PDF页面元素(超链接,字体,图形,图片,表格) 技术特点: 1.支持 .NET Framework 2.0, 3.0, 3.5, 4.0 2.仅支持 Windows Form 3.支持ASCIIHex, ASCII85, Flate, LZW, Run Length, CCITT Fax, DCT, JPX 解码 4.控件完全由 C# 代码开发 5.独立组件,无需 Adobe Reader 及其他任何第三方软件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值