Extraiga imágenes de documentos de Word usando Java

Las imágenes se usan comúnmente para representar información importante en documentos de Word. La inclusión de imágenes junto con el texto hace que el contenido sea más atractivo. En ciertos casos, es posible que deba extraer las imágenes incrustadas en los documentos de Word mediante programación. Para lograr eso, este artículo cubre cómo extraer imágenes de documentos de Word usando Java.

API de Java para extraer imágenes de documentos de Word

Aspose.Words for Java es una API potente y rica en funciones para crear, manipular y convertir documentos de MS Word. Por lo tanto, utilizaremos esta API para extraer imágenes de documentos DOCX/DOC de MS Word. Puede descargar el JAR de la API o instalarlo en su aplicación Java utilizando las siguientes configuraciones de 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>

Cómo extraer imágenes de un documento de Word

Las imágenes en un documento de Word se representan mediante objetos de forma. Por lo tanto, para recuperar imágenes, deberá procesar todas las formas del documento. Los siguientes son los pasos para extraer imágenes de un documento DOCX de Word en Java.

El siguiente ejemplo de código muestra cómo extraer imágenes de un documento DOCX en Java.

// Cargar documento de Word
Document doc = new Document("Document.docx");

// Consigue todas las formas
NodeCollection<Shape> shapes = (NodeCollection<Shape>) doc.getChildNodes(NodeType.SHAPE, true);
int imageIndex = 0;

// Bucle a través de la colección de formas
for (Shape shape : shapes) {
  
    // Comprobar si la forma tiene imagen
    if (shape.hasImage()) {
      
        // Extrae y guarda la imagen.
        String imageFileName = String.format(
                "Image.ExportImages.{0}_out_{1}", imageIndex, FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType()));
        shape.getImageData().save(dataDir + imageFileName);
        imageIndex++;
    }
}

Obtenga una licencia de API gratuita

Obtenga una licencia temporal gratuita para usar Aspose.Words for Java sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido a extraer imágenes de un documento de Word utilizando Java. Además, el ejemplo de código ha mostrado cómo extraer las imágenes de un archivo DOCX y guardarlas en la ubicación deseada. Además, Aspose.Words for Java proporciona una amplia gama de funciones para la manipulación de documentos. Para explorar esas funciones, puede visitar la documentación. Además, puede hacer sus preguntas a través de nuestro foro.

Ver también

Información: Puede que le interese otra API de Java (Aspose.Slides for Java) que le permite convertir presentaciones (a PDF, documentos de Word, etc.) e importar imágenes u otros documentos en presentaciones.