Java 操作Word书签(三):用文本、图片、表格替换书签
程序员文章站
2022-10-24 13:34:59
本篇文章将继续介绍通过Java来操作Word书签的方法,即替换Word中已有书签,包括用新的文本、图片、表格等替换原有书签处的内容。 使用工具:Free Spire.Doc for Java Jar文件获取及导入: 方法1:通过官网下载jar文件包。下载后,解压文件。并将lib文件夹下的Spire. ......
本篇文章将继续介绍通过java来操作word书签的方法,即替换word中已有书签,包括用新的文本、图片、表格等替换原有书签处的内容。
使用工具:free spire.doc for java
jar文件获取及导入:
方法1:通过官网下载jar文件包。下载后,解压文件。并将lib文件夹下的spire.doc.jar文件导入到java程序。参考如下导入效果:
方法2:可通过仓库安装导入。可参考安装。
java代码示例
【示例1】用文本替换书签
import com.spire.doc.*; import com.spire.doc.documents.bookmarksnavigator; public class replacebookmarkcontentwithnewcontent { public static void main(string[]args){ //加载包含书签的word文档 document doc = new document(); doc.loadfromfile("test.docx"); //定位到指定书签位置 bookmarksnavigator bookmarksnavigator = new bookmarksnavigator(doc); bookmarksnavigator.movetobookmark("bookmark1"); //用文本内容替换原有书签位置的文本,新替换的内容与原文格式一致 bookmarksnavigator.replacebookmarkcontent("新文本内容!",true); //保存文档 doc.savetofile("replacewithnewcontent.docx",fileformat.docx_2013); doc.dispose(); } }
替换效果:
【示例2】用图片替换书签
import com.spire.doc.*; import com.spire.doc.documents.bookmarksnavigator; import com.spire.doc.documents.paragraph; import com.spire.doc.documents.textbodypart; public class replacebookmarkwithimg { public static void main(string[]args){ //加载包含书签的文档 document doc = new document(); doc.loadfromfile("test.docx"); //定位到指定书签位置 bookmarksnavigator bookmarksnavigator = new bookmarksnavigator(doc); bookmarksnavigator.movetobookmark("bookmark1"); //添加图片,替换原有书签内容 paragraph para= new paragraph(doc); para.appendpicture("eth.png"); textbodypart bodypart = new textbodypart(doc); bodypart.getbodyitems().add(para); bookmarksnavigator.replacebookmarkcontent(bodypart); //保存文档 doc.savetofile("replacewithimg.docx",fileformat.docx_2013); doc.dispose(); } }
替换效果:
【示例3】用表格替换书签
import com.spire.doc.*; import com.spire.doc.documents.*; import com.spire.doc.fields.textrange; public class replacebookmarkcontentwithtable { public static void main(string[]args){ //加载包含书签的word文档 document doc = new document(); doc.loadfromfile("test.docx"); //声明数组内容 string[][] data = { new string[]{"分类", "等级", "编号"}, new string[]{"a", "一级", "01a"}, new string[]{"b", "二级", "02b"}, new string[]{"c", "三级", "03c"}, }; //创建表格 table table = new table(doc, true); table.resetcells(4, 3); for (int i = 0; i < data.length; i++) { tablerow datarow = table.getrows().get(i); for (int j = 0; j < data[i].length; j++) { textrange range = datarow.getcells().get(j).addparagraph().appendtext(data[i][j]); range.getownerparagraph().getformat().sethorizontalalignment(horizontalalignment.center); range.getcharacterformat().setfontname("楷体"); datarow.getrowformat().sethorizontalalignment(rowalignment.center); datarow.getcells().get(j).getcellformat().setverticalalignment(verticalalignment.middle); } } //创建textbodypart对象 textbodypart bodypart= new textbodypart(doc); bodypart.getbodyitems().add(table); //定位到指定书签位置 bookmarksnavigator bookmarknavigator = new bookmarksnavigator(doc); bookmarknavigator.movetobookmark("bookmark1"); //使用表格替换原书签的内容 bookmarknavigator.replacebookmarkcontent(bodypart); //保存文档 doc.savetofile("replacewithtable.docx", fileformat.docx); doc.dispose(); } }
替换效果:
(本文完)
转载请出名出处!
上一篇: 剑指offer33:求按从小到大的顺序的第N个丑数。
下一篇: 卤鸭脖素菜放什么好,什么素菜可以卤