1. 首页
  2. IT资讯

Java 添加、回复、修改(替换)、删除Word批注

批注是一种常用于对特定文档内容进行注解的工具或方法,起到解释说明、标记指正的作用。在本篇文章中,将介绍如何操作Word批注的方法,包括:

1. 添加批注:添加文本到批注、插入图片到批注;

  1.1 给指定段落添加批注

  1.2 给指定字符串添加批注

2. 回复批注;

3. 修改或替换批注:用文本替换批注中的文本内容、用文本替换批注中的图片、用图片替换批注中的图片;

4. 删除批注:删除指定批注中的所有内容、删除指定批注中的指定内容

 

使用工具: Free Spire.Doc for Java (免费版)

J ar 文件获取及导入:

方法 1 通过 官网获取 jar包,并解压。解压后,将lib文件夹下的Spire.Doc.jar文件导入java程序。

方法2 :通过添加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);       }   }

批注添加效果:

Java 添加、回复、修改(替换)、删除Word批注


【示例2】给指定字符串添加批注

 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();       }   }

批注添加效果:

Java 添加、回复、修改(替换)、删除Word批注

【示例3】回复批注

 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);       }   }

批注回复效果:

Java 添加、回复、修改(替换)、删除Word批注

【示例4】修改或替换批注

 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);       }   }

修改或替换结果:

Java 添加、回复、修改(替换)、删除Word批注

【示例5】删除批注

 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);       }   }

批注删除效果:

(本文完)

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31499788/viewspace-2663055/,如需转载,请注明出处,否则将追究法律责任。

主题测试文章,只做测试使用。发布者:深沉的少年,转转请注明出处:http://www.cxybcw.com/184547.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code