
图像通常用于表示 Word DOC 文档中的重要信息。在文本旁边包含图像使内容更具吸引力。在某些情况下,您可能需要以编程方式提取 DOC 文档中嵌入的图像。为此,本文介绍了如何在 Java 中从 DOC 中提取图像。
Java API 从 DOC 文件中提取图像
Aspose.Words for Java 是一个功能强大且功能丰富的 API,用于创建、操作和转换 MS Word 文档。因此,我们将使用此 API 从 DOC 文档中提取图像。您可以下载 API 的 JAR 或使用以下 Maven 配置将其安装到您的 Java 应用程序中。
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>21.11</version>
<type>pom</type>
</dependency>
如何在 Java 中从 DOC 中提取图像
DOC 文档中的图像使用形状对象表示。因此,要检索图像,您必须处理文档中的每个形状。以下是从 Java 中的 DOC 文件中提取图像的步骤。
- 首先,使用 Document 类加载 DOC 文件。
- 然后,将所有形状放入 NodeCollection 对象使用 Document.getChildNodes(NodeType.SHAPE, Boolean) 方法。
- 循环遍历检索到的形状。
- 在每次迭代中,使用 Shape.hasImage() 方法检查形状是否有图像。
- 最后,提取图像并使用 Shape.getImageData().save(string) 方法保存。
以下代码示例展示了如何从 Java 中的 DOC 文档中提取图像。
// 加载 Word 文档
Document doc = new Document("Document.docx");
// 获取所有形状
NodeCollection<Shape> shapes = (NodeCollection<Shape>) doc.getChildNodes(NodeType.SHAPE, true);
int imageIndex = 0;
// 循环遍历形状集合
for (Shape shape : shapes) {
// 检查形状是否有图像
if (shape.hasImage()) {
// 提取并保存图像
String imageFileName = String.format(
"Image.ExportImages.{0}_out_{1}", imageIndex, FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType()));
shape.getImageData().save(dataDir + imageFileName);
imageIndex++;
}
}
Java DOC 图像提取器 - 获取免费许可证
获得免费的临时许可证 使用 Aspose.Words for Java,不受评估限制。
结论
在本文中,您学习了如何在 Java 中从 DOC 文档中提取图像。此外,代码示例还展示了如何从 DOC 文件中提取图像并将其保存到所需位置。此外,Aspose.Words for Java 提供了广泛的文档操作功能。要探索这些功能,您可以访问 文档。此外,您可以通过我们的 论坛 提问。
也可以看看
信息:您可能对另一个 Java API (Aspose.Slides for Java) 感兴趣,它允许您转换演示文稿(转换为 PDF、word 文档 等)和 导入图像 或其他文件放入演示文稿。