提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:吉伟伟|2024-12-27 10:38:45.807|阅读 3 次
概述:Word 文档中的批注通常用于协作审阅和反馈。这些批注可能包含文本和图片,它们为文档改进提供了重要的参考信息。本文将演示如何使用 Spire.Doc for Java 在 Java 中提取 Word 文档中的批注文本和图片。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Word 文档中的批注通常用于协作审阅和反馈。这些批注可能包含文本和图片,它们为文档改进提供了重要的参考信息。提取批注中的文本和图片可以帮助你分析和评估审阅者的反馈,从而全面了解文档的优点、缺点以及改进建议。本文将演示如何使用 Spire.Doc for Java 在 Java 中提取 Word 文档中的批注文本和图片。
首先,您需要在 Java 程序中添加 Spire.Doc.jar 文件作为依赖项。
<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>//repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.doc</artifactId> <version>12.11.9</version> </dependency> </dependencies>
使用 Java 获取 Word 文档批注中的文本并不难。首先遍历 Word 文档中的所有批注,然后使用 Spire.Doc for Java 提供的 Document.getComments().get() 方法获取当前的批注,再然后遍历批注正文的每一个段落并获取当前段落,最后使用 Paragraph.getText() 方法获取该段落的文本。下面是具体的操作步骤:
import com.spire.doc.*; import com.spire.doc.documents.*; import com.spire.doc.fields.*; import java.io.*; public class ExtractComments { public static void main(String[] args) throws IOException { // 创建一个 Document 类的对象 Document doc = new Document(); // 加载一个 Word 文档 doc.loadFromFile("/AI绘画的利弊及法律应对.docx"); // 遍历文档中的每个批注 for (int i = 0; i < doc.getComments().getCount(); i++) { // 获取当前索引处的批注 Comment comment = doc.getComments().get(i); // 遍历批注正文中的每个段落 for (int j = 0; j < comment.getBody().getParagraphs().getCount(); j++) { // 获取当前的段落 Paragraph para = comment.getBody().getParagraphs().get(j); // 获取该段落的文本 String result = para.getText() + "\r\n"; // 将提取到的批注保存为文本文件 writeStringToTxt(result, "/批注信息.txt"); } } // 释放资源 doc.dispose(); } // 自定义将数据写入到文本文件的方法 public static void writeStringToTxt(String content, String txtFileName) throws IOException { FileWriter fWriter = new FileWriter(txtFileName); try { // 写入文本文件 fWriter.write(content); } catch (IOException ex) { ex.printStackTrace(); } finally { try { // 关闭文件写入器 fWriter.flush(); fWriter.close(); } catch (IOException ex) { ex.printStackTrace(); } } } }
要从 Word 文档的批注中提取图片,需要遍历批注段落中的子对象,找到 DocPicture 对象。然后通过 DocPicture.getImageBytes() 方法获取图片数据,并将其保存为图像文件。
import com.spire.doc.*; import com.spire.doc.documents.*; import com.spire.doc.fields.*; import java.io.*; import java.nio.file.*; import java.util.ArrayList; import java.util.List; public class ExtractCommentImages { public static void main(String[] args) { // 创建一个 Document 对象 Document document = new Document(); // 加载包含批注的 Word 文档 document.loadFromFile("/AI绘画的利弊及法律应对.docx"); // 创建一个列表来存储提取的图片数据 List images = new ArrayList<>(); // 遍历文档中的批注 for (int i = 0; i < document.getComments().getCount(); i++) { Comment comment = document.getComments().get(i); // 遍历批注正文中的所有段落 for (int j = 0; j < comment.getBody().getParagraphs().getCount(); j++) { Paragraph paragraph = comment.getBody().getParagraphs().get(j); // 遍历段落中的所有子对象 for (int k = 0; k < paragraph.getChildObjects().getCount(); k++) { DocumentObject obj = paragraph.getChildObjects().get(k); // 检查是否为图片 if (obj instanceof DocPicture) { DocPicture picture = (DocPicture) obj; // 获取图片数据并添加到列表 images.add(picture.getImageBytes()); } } } } // 指定输出路径 String outputDir = "/批注图片/"; new File(outputDir).mkdirs(); // 保存图片数据为文件 for (int i = 0; i < images.size(); i++) { String fileName = String.format("批注图片-.png", i); Path filePath = Paths.get(outputDir, fileName); try (FileOutputStream fos = new FileOutputStream(filePath.toFile())) { fos.write(images.get(i)); } catch (IOException e) { e.printStackTrace(); } } } }
欢迎下载|体验更多E-iceblue产品
获取更多信息请咨询 ;技术交流Q群(767755948)
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:慧都网Spire.Doc for WPF 是一款在WPF平台上操作的MS Word组件,可以轻松并专业地访问大量各种不同的word文档处理任务。
Spire.Doc for Silverlight是一款在Silverlight平台上操作的MS Word组件,让用户可以执行基本的文字处理任务。
Word 文档中的批注通常用于协作审阅和反馈。这些批注可能包含文本和图片,它们为文档改进提供了重要的参考信息。本文将演示如何使用 Spire.Doc for Java 在 Java 中提取 Word 文档中的批注文本和图片。
本文主要介绍如何使用DevExpress WinForms Data Grid组件实现列重新排序,欢迎下载最新版组件体验!
Visual Paradigm中的Doc. Composer菜单,可让您以完全可自定义的方式输出模型和图表的每个细节。在本文中,您将学习如何创建自定义模板来输出项目中图表或模型元素的注释。
对于银行金融、政府、医疗等需要处理大量信息的组织来说,高效的数据管理至关重要。对于大型数据扫描项目,Dynamic Web TWAIN SDK 提供强大的功能,只需极少的设置即可支持大量文档处理,让我们看看 Dynamsoft 如何简化此过程中的每个步骤。
Spire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET 类库。
Spire.Doc for WPFSpire.Doc for WPF 是一款在WPF平台上操作的MS Word组件,可以轻松并专业地访问大量各种不同的word文档处理任务。
Spire.Doc for SilverlightSpire.Doc for Silverlight是一款在Silverlight平台上操作的MS Word组件,让用户可以执行基本的文字处理任务。
Spire.Doc for JavaSpire.Doc for Java是Java Word组件,具有生成、读取、转换Word文档等功能
Spire.Doc for PythonSpire.Doc for Python是专为开发人员设计的专业 Word Python API
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢