实际的项目需求中一样也会遇到合并word文件的状况,在此分两种状况分别介绍一下使用PageOffice解决此需求的实现方法。code
1.把多个word文档分别插入到模板中指定数据区域生成一个Word文档。对象
首先介绍一下DataRegion的Value属性,若是给Value赋值一个字符串常量或变量,那么数据区域的内容就是这段文本;若是给Value赋值一个”[Word]”开头,”[/Word]”结尾的字符串常量或变量,PageOffice会认为[Word]和 [/Word]之间是另外的一个word文档的URL路径,PageOffice会自动的把这个word文档的整个内容插入到数据区域所在位置。文档
ASP.NET的代码:字符串
doc.OpenDataRegion("PO_dr ").Value = "[Word]doc/001.doc[/Word]";
JAVA的代码:it
doc.openDataRegion("PO_dr").setValue(“[Word]doc/001.doc[/Word]”);
实现插入多个文档到模板中指定的数据区域,只须要重复的对各个数据区域赋值对应的文档URL路径值。io
2.把多个Word文档先后相连合并成一个文档的。模板
实现多个Word文件的链接,推荐使用给数据区域赋值“[Word] 文档下载路径[/Word]” 的方法,利用PageOffice.WordWriter.WordDocument对象的CreateDataRegion方法在文件的末尾连续建立数据区域,而后依次给各个数据区域赋值要插入的Word文档的URL路径。好比要合并doc目录下的1.doc、2.doc和3.doc到一个文件中。变量
ASP.NET的实现代码:下载
PageOffice.WordWriter.WordDocument doc = new PageOffice.WordWriter.WordDocument(); PageOffice.WordWriter.DataRegion dr1 = doc.CreateDataRegion("PO_dr1", PageOffice.WordWriter.DataRegionInsertType.After, "[End]"); dr1.Value = "[Word]doc/1.doc[/Word]"; PageOffice.WordWriter.DataRegion dr2 = doc.CreateDataRegion("PO_dr2", PageOffice.WordWriter.DataRegionInsertType.After, "[End]"); dr2.Value = "[Word]doc/2.doc[/Word]"; PageOffice.WordWriter.DataRegion dr3 = doc.CreateDataRegion("PO_dr3", PageOffice.WordWriter.DataRegionInsertType.After, "[End]"); dr3.Value = "[Word]doc/3.doc[/Word]"; …… PageOfficeCtrl1.SetWriter(doc);
JAVA的实现代码:方法
WordDocument doc = new WordDocument(); DataRegion dr1= doc.createDataRegion("PO_dr1", DataRegionInsertType.After, "[End]"); dr1.setValue("[Word]doc/1.doc[/Word]"); DataRegion dr2= doc.createDataRegion("PO_dr2", DataRegionInsertType.After, "[End]"); dr2.setValue("[Word]doc/2.doc[/Word]"); DataRegion dr3= doc.createDataRegion("PO_dr3", DataRegionInsertType.After, "[End]"); dr3.setValue("[Word]doc/3.doc[/Word]"); …… poCtrl1.setWriter(doc);