import com.spire.doc.*;
import com.spire.doc.documents.CommentMark;
import com.spire.doc.documents.CommentMarkType;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextSelection;
import com.spire.doc.fields.Comment;

public class AddCommentToCharacters {
public static void main(String[] args) {
//加载测试文档
Document doc = new Document();
doc.loadFromFile("test.docx");

//查找指定字符串
TextSelection[] selections = doc.findAllString("皱状厚膜", true, false);

//获取关键字符串所在段落
Paragraph para = selections[0].getAsOneRange().getOwnerParagraph();
int index = para.getChildObjects().indexOf(selections[0].getAsOneRange());

//添加批注ID
CommentMark start = new CommentMark(doc);
start.setCommentId(1);
start.setType(CommentMarkType.Comment_Start);
CommentMark end = new CommentMark(doc);
end.setType(CommentMarkType.Comment_End);
end.setCommentId(1);

//添加批注内容
String str = "给指定字符串添加批注";
Comment comment = new Comment(doc);
comment.getFormat().setCommentId(1);
comment.getBody().addParagraph().appendText(str);
comment.getFormat().setAuthor("作者:");
comment.getFormat().setInitial("CM");
para.getChildObjects().insert(index, start);
para.getChildObjects().insert(index + 1, selections[0].getAsOneRange());
para.getChildObjects().insert(index + 2,end);
para.getChildObjects().insert(index + 3, comment);

//保存文档
doc.saveToFile("字符串批注.docx",FileFormat.Docx_2013);
doc.dispose();
}
}

WORD添加批注(JAVA)的更多相关文章

  1. Java 给Word指定字符串添加批注

    本文将介绍在Java程序中如何给Word文档中的指定字符串添加批注.前文中,主要介绍的是针对某个段落来添加批注,以及回复.编辑.删除批注的方法,如果需要针对特定关键词或指定字符串来设置批注,可以参考本 ...

  2. EasyExcel导出添加批注

    直接看代码.根据个人需要做改动 注:POI也可以做批注,文章链接https://www.cnblogs.com/qq1445496485/p/15622664.html /** * 导出(批注) * ...

  3. office excel中怎么添加批注及修改批注用户名

    office excel中怎么添加批注及修改批注用户名 参考:https://jingyan.baidu.com/article/c33e3f48a52853ea15cbb5db.html 1. of ...

  4. NPOI 导出添加批注功能

    这个问题在网上搜,都是说如下即可: //添加批注HSSFPatriarch patr = (HSSFPatriarch)sheet.CreateDrawingPatriarch();HSSFComme ...

  5. Activiti添加批注(comment)信息

    在每次提交任务的时候需要描述一些批注信息,例如:请假流程提交的时候要描述信息为什么请假,如果领导驳回可以批注驳回原因等 1.添加批注 // 由于流程用户上下文对象是线程独立的,所以要在需要的位置设置, ...

  6. Java 给Word添加数字签名

    本文以Java程序代码为例,介绍如何给Word文档添加数字签名. 程序运行环境 IntedliJ IDEA JDK 1.8.0 Jar包:spire.doc.jar 4.5.1 Word文档:.doc ...

  7. Java 给Word添加印章

    一.概述 本文以Java程序代码展示如何给Word文档添加印章,这里添加的印章为.png格式的图片,添加印章即在Word中的指定位置添加印章图片. 基本思路:加载word文档,获取段落,在段落中插入图 ...

  8. java poi给sheet表格中的某个单元格添加批注

    Label l = , , "A cell with a comment"); WritableCellFeatures cellFeatures = new WritableCe ...

  9. Spire.Cloud.Word 添加Word水印(文本水印、图片水印)

    概述 Spire.Cloud.Word提供了watermarksApi接口可用于添加水印,包括添加文本水印(SetTextWatermark).图片水印(SetImageWatermark),本文将对 ...

随机推荐

  1. OI总结

    当下考的钟声叮当响起,该走了,一年半的OI竞赛就此结束 留下了很多遗憾.也拥有过一段美好的竞赛生活 结识了一群优秀的OI战友,一起进步一起开心一起忧愁,但这一切的一切都将在今晚变成过去式,CSp的好与 ...

  2. MySQL单机优化---分表、分区、分库

    一.分表: 水平分表:根据条件把数据分为N个表(例如:商品表中有月份列,则可以按月份进行水平分表). 使用场景:一张表中数据太多,查询效率太慢. 当需要同时查询被水平分表的多张表时: 在两条SQL语句 ...

  3. c++11多线程记录2:线程管理

    线程没有调用join和detach thread对象必须调用join或者detach,否则程序会终止 例如: void func() { std::cout << "hello, ...

  4. Jenkins+Gitlab配置Webhook实现提交自动部署

    一.概述 在上一篇文章,链接如下: https://www.cnblogs.com/xiao987334176/p/11434849.html 已经实现了 Jenkins+harbor+gitlab+ ...

  5. python 函数的链式调用(一个函数调用使用两个括号)

    # python 函数的链式调用 def funcA(a): def funcB(b): for a_each in a: x = funcB(a_each) return x return func ...

  6. 简单后台管理系统框架--HTML练手项目2【Frameset】

    [本文为原创,转载请注明出处] 技术[HTML]   布局[Frameset] 无步骤 <!DOCTYPE html> <html lang="en"> & ...

  7. js删除对象里的某一个属性

    var a={"id":1,"name":"danlis"}; //添加属性 a.age=18; console.log(a); //结果: ...

  8. Windows下MongoDB的下载安装、环境配置

    下载MongoDB 1.进入MongoDB官网,Products -> 选择SOFTWARE下的MongoDB Server 2.选择下载最新版 3.选择对应的版本下载 msi安装包形式安装Mo ...

  9. CspParameters 对象已存在异常 解决多应用对同一容器的访问问题

    CspParameters cspParams; cspParams = new CspParameters(PROVIDER_RSA_FULL); cspParams.KeyContainerNam ...

  10. package-lock.json的作用(转载)

    package-lock.json 文件的作用  来源 :https://www.cnblogs.com/kugeliu/p/9153775.html npm5之后安装文件之后会多出一个package ...