C#利用Aspose.Words.DLL 生成pdf文件并添加印章

该博客介绍了如何利用Aspose.Words库在Word文档中插入印章和填充数据。通过设定印章路径、模板地址和保存路径,结合DocumentBuilder插入图片并填充书签名,最终将文档转换为PDF。方法包括处理模板、插入印章图片以及遍历并填充数据到指定书签位置。
摘要由CSDN通过智能技术生成
       string templatePath_url = Server.MapPath("./images/gz.gif"); //印章地址
            string templatePath = Server.MapPath("./安全告知承诺书.docx"); //模板地址
            string path = Server.MapPath("./yzmodel/"); //保存地
            string targetPath = path+ "_安全告知承诺书.pdf";

先设定好印章所在的目录。

由于Aspose.Words 需要建模板才能使用,在这里就不详细描述建模版的步骤了,这个步骤简单可以在网上查询。

以下是需要新建的方法:

   private void HandleGuaranteeDoc(string Path_TempleteDoc, string ny, string img_url, string Path_out)
    {
        // 要是直接往section里插图片设置behindtext属性是可以做成印章的,问题是就只有第一页有其他页面就没得了 那要看你的代码。 第一页怎么加的

        string tempFile = Path.GetFullPath(Path_TempleteDoc).ToString(); //获取模板路径,这个根据个人模板路径而定。
        Document doc = new Document(tempFile);
        DocumentBuilder builder = new DocumentBuilder(doc);   //操作word

        Dictionary<string, string> dic = new Dictionary<string, string>();//创建键值对 第一个string 为书签名称 第二个string为要填充的数据
        if (!string.IsNullOrEmpty(img_url))
        {
            builder.MoveToBookmark("img_url");
            Shape shape = builder.InsertImage(img_url, RelativeHorizontalPosition.Margin, 120, RelativeVerticalPosition.Margin, 480, 120, 120, WrapType.Square);//用流创建图片
            shape.WrapType = WrapType.None;//可以使图片浮于文字上方,但是位置信息丢失,不能在书签位置出现。
        }
        if (!string.IsNullOrEmpty(ny))
        {
            dic.Add("ny", ny);
        }
       

        foreach (var key in dic.Keys)   //循环键值对
        {
            builder.MoveToBookmark(key);  //将光标移入书签的位置
            builder.Write(dic[key]);   //填充值
        }
        // Create a new memory stream.
        MemoryStream outStream = new MemoryStream();
        // Save the document to stream.
        doc.Save(Path_out);//保存为pdf
        
    }

找不到dll 的 ,可以联系我。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值