As imagens são comumente usadas para representar informações importantes em arquivos Word DOC. A inclusão de imagens ao lado do texto torna o conteúdo mais atraente. Em certos casos, pode ser necessário extrair as imagens incorporadas nos arquivos DOC programaticamente. Para conseguir isso, este artigo aborda como extrair imagens de arquivos DOC em Java.
API Java para extrair imagens de arquivos DOC
Aspose.Words for Java é uma API poderosa e rica em recursos para criar, manipular e converter documentos do MS Word. Portanto, usaremos essa API para extrair imagens de arquivos DOC. Você pode baixar o JAR da API ou instalá-lo em seu aplicativo Java usando as seguintes configurações do Maven.
<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>
Extrair imagens do DOC em Java
As imagens em um arquivo DOC são representadas usando objetos de forma. Portanto, para recuperar imagens, você terá que processar todas as formas do documento. A seguir estão as etapas para extrair imagens de um arquivo DOC em Java.
- Primeiro, carregue o arquivo DOC usando a classe Document.
- Em seguida, coloque todas as formas em um NodeCollection usando o método Document.getChildNodes(NodeType.SHAPE, Boolean).
- Percorra as formas recuperadas.
- Em cada iteração, verifique se a forma tem uma imagem usando o método Shape.hasImage().
- Finalmente, extraia a imagem e salve-a usando o método Shape.getImageData().save(string).
O exemplo de código a seguir mostra como extrair imagens de um documento DOC em Java.
// Carregar documento do Word
Document doc = new Document("Document.docx");
// Obtenha todas as formas
NodeCollection<Shape> shapes = (NodeCollection<Shape>) doc.getChildNodes(NodeType.SHAPE, true);
int imageIndex = 0;
// Percorra a coleção de formas
for (Shape shape : shapes) {
// Verifique se a forma tem imagem
if (shape.hasImage()) {
// Extraia e salve a imagem
String imageFileName = String.format(
"Image.ExportImages.{0}_out_{1}", imageIndex, FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType()));
shape.getImageData().save(dataDir + imageFileName);
imageIndex++;
}
}
Java DOC Image Extractor - Obtenha uma licença gratuita
Obtenha uma licença temporária gratuita para usar o Aspose.Words for Java sem limitações de avaliação.
Conclusão
Neste artigo, você aprendeu como extrair imagens de arquivos DOC em Java. Além disso, o exemplo de código mostrou como extrair as imagens de um arquivo DOC e salvá-las no local desejado. Além disso, Aspose.Words para Java oferece uma ampla gama de recursos para manipulação de documentos. Para explorar esses recursos, você pode visitar a documentação. Além disso, você pode fazer suas perguntas através do nosso fórum.
Veja também
- Criar documentos do Word do zero em Java
- Gerar documentos do Word a partir de modelos em Java
- Converter arquivos do Word para PDF em Java
Informações: Você pode estar interessado em outra API Java (Aspose.Slides for Java) que permite converter apresentações (em PDFs, documentos do Word, etc.) e importar imagens ou outros documentos em apresentações.