Java 添加、回复、修改(替换)、删除Word批注
批注是一种常用于对特定文档内容进行注解的工具或方法,起到解释说明、标记指正的作用。在本篇文章中,将介绍如何操作Word批注的方法,包括:
1. 添加批注:添加文本到批注、插入图片到批注;
2. 回复批注;
3. 修改或替换批注:用文本替换批注中的文本内容、用文本替换批注中的图片、用图片替换批注中的图片;
4. 删除批注:删除指定批注中的所有内容、删除指定批注中的指定内容
使用工具:Free Spire.Doc for Java (免费版)
Jar文件导入(参考):
方法1:通过官网获取jar包,并解压。
导入步骤1:在程序中新建一个Directory目录,并将控件包中lib文件夹下的Spire.Doc.jar文件(如下图)复制到新建的目录下。

导入步骤2:鼠标右键点击复制后的jar文件,选择“Add as Library”,弹出的对话框中,点击“OK”,完成导入。
方法2:通过添加maven依赖导入到maven项目,参考导入步骤。
Java示例代码
【示例1】添加批注(文本、图片)
import com.spire.doc.*;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.fields.Comment; public class AddComment {
public static void main(String[] args) {
//加载测试文档
Document doc = new Document("test.docx"); //获取指定段落
Section sec = doc.getSections().get(0);
Paragraph para= sec.getParagraphs().get(3); //插入文本到批注
Comment comment = para.appendComment("请在试验中将包含以下特征的实验样本记录在册,并整理好周记录报表,供后续观察取样。");
comment.getFormat().setAuthor("审校组");
//插入图片到批注
comment.getBody().addParagraph().appendPicture("tp.png"); //保存文档
doc.saveToFile("AddComment.docx", FileFormat.Docx_2010);
}
}
批注添加效果:

【示例2】回复批注
import com.spire.doc.*;
import com.spire.doc.fields.Comment; public class ReplyComment {
public static void main(String[] args) throws Exception{
//加载测试文档
Document doc = new Document("AddComment.docx"); //获取指定批注
Comment comment = doc.getComments().get(0); //回复批注
Comment relyC= new Comment(doc);
relyC.getFormat().setAuthor("实验组");
relyC.getBody().addParagraph().appendText("已完成。");
comment.replyToComment(relyC); //保存文档
doc.saveToFile("ReplyComment.docx",FileFormat.Docx_2010);
}
}
批注回复效果:

【示例3】修改或替换批注
import com.spire.doc.*;
public class ModifyComment {
public static void main(String[] args){
//加载含有批注的测试文档
Document doc = new Document("sample.docx");
//获取第一个批注中的第一段,用文本替换原有批注中的文本
doc.getComments().get(0).getBody().getParagraphs().get(0).replace("请在试验中将包含以下特征的实验样本记录在册,并整理好周记录报表,供后续观察取样。","参照以下实验方法!",false,false);
//获取第一个批注中的第二段,用文本替换原有批注中的图片
doc.getComments().get(0).getBody().getParagraphs().get(1).setText("请上报管理科!");
//获取第一个批注中的第三段,删除原有图片,再调用方法添加新图片(用图片替换图片)
doc.getComments().get(0).getBody().getParagraphs().get(2).getChildObjects().removeAt(0);
doc.getComments().get(0).getBody().getParagraphs().get(2).appendPicture("2.png");
//保存文档
doc.saveToFile("ModifyComment.docx",FileFormat.Docx_2010);
}
}
修改或替换结果:

【示例4】删除批注
import com.spire.doc.*;
import com.spire.doc.FileFormat; public class DeleteComment{
public static void main(String[] args) {
//加载测试文档
Document doc = new Document("AddComment.docx"); //调用方法删除指定批注(删除批注中的所有内容)
doc.getComments().removeAt(0); //删除指定批注中的指定段落(删除批注中的部分内容)
doc.getComments().get(0).getBody().getParagraphs().get(1).getChildObjects().removeAt(0); //保存文档
doc.saveToFile("DeleteComment", FileFormat.Docx_2010);
}
}
批注删除效果:

(本文完)
转载请注明出处!!!!!
Java 添加、回复、修改(替换)、删除Word批注的更多相关文章
- C# /VB.NET 插入、修改、删除Word批注
批注内容可以是对某段文字或内容的注释,也可以是对文段中心思想的概括提要,或者是对文章内容的评判.疑问,以及在阅读时给自己或他人起到提示作用.本篇文章中将介绍如何在C#中操作Word批注,主要包含以下要 ...
- C# /VB.NET操作Word批注(一)—— 插入、修改、删除Word批注
批注内容可以是对某段文字或内容的注释,也可以是对文段中心思想的概括提要,或者是对文章内容的评判.疑问,以及在阅读时给自己或他人起到提示作用.本篇文章中将介绍如何在C#中操作Word批注,主要包含以下要 ...
- JAVA 添加、修改和删除PDF书签
当阅读篇幅较长的PDF文档时,为方便我们再次阅读时快速定位到上一次的阅读位置,可以插入一个书签进行标记:此外,对于文档中已有的书签,我们也可以根据需要进行修改或者删除等操作.本篇文章将通过Java编程 ...
- Java 添加、读取和删除 Excel 批注
批注是一种富文本注释,常用于为指定的Excel单元格添加提示或附加信息. Free Spire.XLS for Java 为开发人员免费提供了在Java应用程序中对Excel文件添加和操作批注的功能. ...
- js/java 获取、添加、修改、删除cookie(最全)
一.cookie介绍 1.cookie的本来面目 HTTP协议本身是无状态的.什么是无状态呢,即服务器无法判断用户身份.Cookie实际上是一小段的文本信息(key-value格式).客户端向服务 ...
- javascript里面的数组,json对象,动态添加,修改,删除示例
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- Quartz动态添加、修改和删除定时任务
任务调度开源框架Quartz动态添加.修改和删除定时任务 Quartz 是个开源的作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制.Quartz框架包含了调度器监听.作业和触 ...
- Quartz 2.2 动态添加、修改和删除定时任务
QuartzManager.Java 动态添加.修改和删除定时任务管理类 import org.quartz.CronScheduleBuilder; import org.quartz.CronTr ...
- Quartz动态添加,修改,删除任务(暂停,任务状态,恢复,最近触发时间)
首页 博客 学院 下载 图文课 论坛 APP 问答 商城 VIP会员 活动 招聘 ITeye GitChat 写博客 小程序 消息 登录注册 关闭 quartz_Cron表达式一分钟教程 09-05 ...
- 转: javascript动态添加、修改、删除对象的属性和方法
在其他语言中,对象一旦生成,就不可更改了,要为一个对象添加修改成员必须要在对应的类中修改,并重新实例化,而且程序必须经过重新编译.JavaScript 中却非如此,它提供了灵活的机制来修改对象的行为, ...
随机推荐
- C语言学习<输入输出函数,函数的调用>
#include <stdio.h> /* 输入输出函数的学习 函数的调用 2017.05.25 soulsjie */ //输入连个数字求最大值 void main(){ int Max ...
- 将Java程序打包成可执行EXE文件的步骤
需要的工具myeclipse .jar2exe(附上下载地址,直接解压就可以用链接: https://pan.baidu.com/s/1qYPRgXu 密码: wbva) 1.将Java项目导出成.j ...
- BNUOJ 5235 Starship Troopers
Starship Troopers Time Limit: 5000ms Memory Limit: 32768KB This problem will be judged on HDU. Origi ...
- PowerDesigner物理模型用法总结
1. 生成sql脚本 Database→Generate Database 选择要输出的文件路径,即文件存储路径,并根据需要修改文件名,单击确定后便会生成sql脚本. 在Options选项卡里,可以 ...
- CSU - 1115 最短的名字(字典树模板题)
Description 在一个奇怪的村子中,很多人的名字都很长,比如aaaaa, bbb and abababab. 名字这么长,叫全名显然起来很不方便.所以村民之间一般只叫名字的前缀.比如叫'aaa ...
- delphi的一些语法知识 以及参数传递问题,按引用方式传递参数,按值方式传递参数
//delphi中exit,abort,break,continue 的区别 exit: 退出函数体abort: 遇到异常,安静处理,就是不显示不提示break: 退出当前循环体,包括for ,whi ...
- JQuery编程demo练习
JQuery练习demo: 编敲代码,实现: 1.选中当中一列的复选框时,该复选框所在行的背景色高亮显示(黄色). 2.取消选中复选框时,所在行的背景色恢复. ============ ...
- 连通分量模板:tarjan: 求割点 && 桥 && 缩点 && 强连通分量 && 双连通分量 && LCA(近期公共祖先)
PS:摘自一不知名的来自大神. 1.割点:若删掉某点后.原连通图分裂为多个子图.则称该点为割点. 2.割点集合:在一个无向连通图中,假设有一个顶点集合,删除这个顶点集合,以及这个集合中全部顶点相关联的 ...
- Swift—使用try?和try!区别-仅供参考
在使用try进行错误处理的时候,经常会看到try后面跟有问号(?)或感叹号(!),他们有什么区别呢? 1.使用try? try?会将错误转换为可选值,当调用try?+函数或方法语句时候,如果函数或方 ...
- DOM 事件类
DOM事件的级别: DOM级别一共可以分4个级别:DOM0级.DOM1级. DOM2级 .DOM3级.而DOM事件级别分为3个级别:DOM0级事件处理.DOM2级事件处理.DOM3级事件处理 1. D ...