-
Java 操作Word书签(三):用文本、图片、表格替换书签
本篇文章将继续介绍通过Java来操作Word书签的方法,即替换Word中已有书签,包括用新的文本、图片、表格等替换原有书签处的内容。
使用工具:Free Spire.Doc for Java (免费版)
Jar文件获取及导入:
方法1:通过官网下载jar https://www.e-iceblue.cn/Introduce/Free-Spire-Doc-JAVA.html 文件包。下载后,解压文件。并将lib文件夹下的Spire.Doc.jar文件导入到java程序。参考如下导入效果:
方法2:可通过maven仓库安装导入。可参考安装导入方法。
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(); } }
替换效果:
出 处:https://www.cnblogs.com/Yesi/p/11422349.html
最新更新
带有参数的装饰器
类装饰器
django中的auth模块与admin后台管理
python的日期处理
字符串常用方法
基本数据类型概述
python-map()函数基本用法
python带你实现任意下载AcFun视频数据~
bbs项目之注册功能
变量的定义和使用
三大常用数据库事务详解之三:事务运行
三大常用关系型数据库事务详解之二:基
三大关系型数据库事务详解之一:基本概
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
VB.NET中如何快速访问注册表
ASP.NET中图象处理过程详解
Vue(1)Vue安装与使用
JavaScript 语言入门
js将一段字符串的首字母转成大写
纯原生html编写的h5视频播放器
H5仿原生app短信验证码vue2.0组件附源码地
TypeScript(4)接口
TypeScript(3)基础类型
TypeScript(2)WebStorm自动编译TypeScript配置