手机版

用Aspose在word文档中动态生成图片或水印的方法 的单词 NET在ASP.NET之下

时间:2021-10-23 来源:互联网 编辑:宝哥软件园 浏览:

1.在项目中生成word文档概述。这个功能很常见。一般会生成很多纯文字或者列表,方便客户打印。但是,有些客户还需要将图片生成word文档,比如产品图片。这一次,我们介绍如何使用Aspose。的单词。NET在Word中动态生成图片或水印。阿斯彭。的单词。NET,我就不多介绍了。不清楚的朋友可以看最后一篇。需求总是变化很快。最近项目里还有一个要求:报价在系统生成后,一定要有签字,这是根据不同用户生成的图片。好了,我来介绍一下如何实现这个功能。感兴趣的朋友不妨一起讨论一下。2.在文本Aspose中。话说,图片操作主要靠这个类:Aspose。Words . Drawing.Shape首先,我们来看看如何使用这个类加载图片:复制代码如下:使用Aspose。文字;使用Aspose。单词。表格;使用Aspose。文字.渲染;使用Aspose。文字。绘画;文档文档=新文档(tmp path);DocumentBuilder builder=新建DocumentBuilder(文档);形状形状=新形状(文档,形状类型。图像);形状。图像数据。设置图像(服务器。MapPath(' ~/template/default . jpg ');形状。宽度=70;形状。高度=70;形状。水平对齐=水平对齐。右;//右对齐形状。ImageData.SetImage(…)加载图片的方法有四种重载,参数为:图片路径、字节、流、Image对象。我这里主要采用图片路径的方式,因为项目需要根据不同的用户生成不同的签名关系。图片加载到对象后,我们要做的就是把它放到文档中。接下来,我们需要做的是定位图片应该在文档中的位置。Aspose的定位。文档中的单词几乎总是基于Node,我们的图片不太可能像表格一样固定,一次一个单元格。所以我这里的想法是找一个可以随意调整的节点作为“风向标”来定位图片的位置。我们仍然需要使用BookMark(域名也可以)。首先,我们在单词模板中定义一个书签值为“myname”。回到程序中,下面的代码是通过书签定位图片:复制代码如下:builder。移至书签('我的名字');建筑商。插入节点(形状);书签myname=doc。范围。书签['我的名字'];我的名字。Text=医生。范围。书签['我的名字']。移除();医生。save(' baji Adan . doc ',SaveFormat。文档,保存类型。OpenInWord,Response);事实上,我们的动态图生成已经在这里完成了。我们来看看生成的效果:图1如何生成图片作为水印?别担心,请跟我下去。要达到水印效果,其实主要是设置对象的属性Aspose。Words . Drawing.Shape代码如下:复制代码如下: shape . wrap type=wrap type . none;形状。BehindText=true设置后,我们将设置图片应该放置的位置。我们不需要boomark来定位这里。直接放在word模板的中心,如下:复制代码如下: shape . relativehorizontalpposition=relativehorizontalpposition . page;形状。水平对齐=水平对齐。居中;形状。RelativeVerticalPosition=RelativeVerticalPosition。页面;形状。垂直对齐=垂直对齐。居中;在文档的末尾,我们添加了类似于页脚的内容。代码如下。

复制代码代码如下:建筑商moveToHeadeFooterType(headerFooterType .FooterPrimary);边框顶部边框=生成器。单元格格式。边框[边框类型top】;顶部边框线型=线型.单身;顶部边框。线宽=1;建筑商InsertCell();建筑商。单元格格式。宽度=3 * 72;建筑商写(字符串。格式('打印时间: {0},日期时间. ToLongDateString())));建筑商InsertCell();建筑商。段落格式。对齐=段落对齐。右;建筑商。写('版本1.00');建筑商EndRow();建筑商end table()。医生保存。文档,保存格式.文档,保存类型OpenInWord,Response);好了,我们来看看生成的效果:图2

至此,一切都结束了。感谢您抽出时间阅读并与感兴趣的朋友讨论。Aspose破解版的下载地址。NET 6.5的单词。

版权声明:用Aspose在word文档中动态生成图片或水印的方法 的单词 NET在ASP.NET之下是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。