Java 操作Word书签(三):用文本、图片、表格替换书签
本篇文章将继续介绍通过Java来操作Word书签的方法,即替换Word中已有书签,包括用新的文本、图片、表格等替换原有书签处的内容。
使用工具:Free Spire.Doc for Java (免费版)
Jar文件获取及导入:
方法1:通过官网下载jar文件包。下载后,解压文件。并将lib文件夹下的Spire.Doc.jar文件导入到java程序。参考如下导入效果:
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();
- }
- }
替换效果:
(本文完)
转载请出名出处!
Java 操作Word书签(三):用文本、图片、表格替换书签的更多相关文章
- Java 操作Word书签(二):添加文本、图片、表格到书签内容
在Java操作Word书签(一)中介绍了给Word中的特定段落或文字添加书签.读取及删除已有书签的方法,本文将继续介绍Java 操作Word书签的方法,即如何给已有的书签添加内容,包括添加文本.图片. ...
- C#操作word模板插入文字、图片及表格详细步骤
c#操作word模板插入文字.图片及表格 1.建立word模板文件 person.dot用书签 标示相关字段的填充位置 2.建立web应用程序 加入Microsoft.Office.Interop.W ...
- Java解析word,获取文档中图片位置
前言(背景介绍): Apache POI是Apache基金会下一个开源的项目,用来处理office系列的文档,能够创建和解析word.excel.ppt格式的文档. 其中对word文档的处理有两个技术 ...
- [转]C#操作word模板插入文字、图片及表格详细步骤
c#操作word模板插入文字.图片及表格 1.建立word模板文件 person.dot用书签 标示相关字段的填充位置 2.建立web应用程序 加入Microsoft.Office.Interop.W ...
- Java操作Jxl实现导出数据生成Excel表格数据文件
实现:前台用的框架是Easyui+Bootstrap结合使用,需要引入相应的Js.Css文件.页面:Jsp.拦截请求:Servlet.逻辑处理:ClassBean.数据库:SQLserver. 注意: ...
- java通过freemarker导出包含富文本图片的word文档
废话不多说,进入正题! 本文重点在于:对富文本图片的导出(基础的freemarker+word模板导出这里不做详细解说哈) 参考文章:http://www.cnblogs.com/liaofeifig ...
- Java 读取Word批注中的文本和图片
本文将介绍读取Word批注的方法,包括读取Word批注中的文本及图片.关于操作Word批注的方法还可以参考这两篇文章:Java 添加.回复.修改.删除Word批注:Java 给Word指定字符串添加批 ...
- Java 操作Word书签(一):添加、删除、读取书签
Word中,书签功能常用于查找.定位.标记特定字符或段落,对于篇幅较大的文档,此功能非常实用.下面,将介绍通过Java程序来添加及删除Word书签的方法.示例要点包括: 1. 添加书签 1.1 给指定 ...
- Java操作word文档使用JACOB和POI操作word,Excel,PPT需要的jar包
可参考文档: http://wibiline.iteye.com/blog/1725492 下载jar包 http://download.csdn.net/download/javashixiaofe ...
随机推荐
- 【w、vmstat、top、sar、nload】各个命令 使用介绍
第7周第1次课(5月7日) 课程内容: 10.1 使用w查看系统负载10.2 vmstat命令10.3 top命令10.4 sar命令10.5 nload命令 10.1 使用w查看系统负载 w命令查看 ...
- C# 子类与父类构造函数
- 痞子衡嵌入式:恩智浦i.MX RTxxx系列MCU启动那些事(8)- 从Serial(1-bit SPI) NOR恢复启动
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RTxxx系列MCU的1-bit SPI NOR恢复启动. 在前几篇里痞子衡介绍的Boot Device都属于主动启动的 ...
- CSS+HTML实现移动端div左右滑动展示
由于手机屏幕的宽度有限,内容太多移动设备一行装不下的,所以很多移动端网站的导航栏都有左右滑动效果,下面我就用CSS+HTML实现移动端div左右滑动展示. CSS:box设置文本不换行,子元素box1 ...
- 使用Python为中秋节绘制一块美味的月饼
每逢佳节- 对于在外的游子,每逢佳节倍思亲.而对于996ICU的苦逼程序猿们,最期待的莫过于各种节假日能把自己丢在床上好好休息一下了.这几天各公司都陆续开始发中秋礼品了.朋友圈各种秀高颜值的月饼,所以 ...
- 如何对IP地址进行子网划分?
在网络行业,子网划分是必须掌握的的基础知识点,下图是IP地址分类: 子网划分主要掌握的是划分思路,接下来我以192.168.1.72/27的IP划分做为例子: CIDR:无类域间路由. 可以看出192 ...
- luogu P3111 [USACO14DEC]牛慢跑Cow Jog_Sliver |贪心+模拟
有N (1 <= N <= 100,000)头奶牛在一个单人的超长跑道上慢跑,每头牛的起点位置都不同.由于是单人跑道,所有他们之间不能相互超越.当一头速度快的奶牛追上另外一头奶牛的时候,他 ...
- 移动开发在路上-- IOS移动开发 五 网络请求封装
接着上次的讲,这次我们讲 网络请求的封装 打开创建的项目,让我们一起来继续完成他, 上次我们说到GET请求地址的拼接: 我们接着上次的继续完善: 下边我们要定义的是 block //定义block ...
- 移动开发在路上-- IOS移动开发系列 多线程三
这一次说一点概念性的东西,也是为后边做一些基础 HTTP协议的基本概念 http协议的基本概念 全称“超文本传输协议”,浏览器和服务器之间的通信规则 HTTp协议永远都是客户端发起的请求,服务器回送响 ...
- BZOJ 3112 [Zjoi2013]防守战线
题解:单纯形:转化为对偶问题: 对于最大化 cx,满足约束 Ax<=b ,x>0 对偶问题为 最小化 bx,满足约束 ATx>=c ,x>0 (AT为A的转置) 这一题的内存真 ...