Extraire des images de documents Word à l'aide de Java

Les images sont couramment utilisées pour représenter des informations importantes dans les documents Word. L’inclusion d’images à côté du texte rend le contenu plus attrayant. Dans certains cas, vous devrez peut-être extraire les images intégrées dans les documents Word par programmation. Pour y parvenir, cet article explique comment extraire des images de documents Word à l’aide de Java.

API Java pour extraire des images de documents Word

Aspose.Words for Java est une API puissante et riche en fonctionnalités pour créer, manipuler et convertir des documents MS Word. Par conséquent, nous utiliserons cette API pour extraire des images de documents MS Word DOCX/DOC. Vous pouvez télécharger le JAR de l’API ou l’installer dans votre application Java à l’aide des configurations Maven suivantes.

<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>

Comment extraire des images d’un document Word

Les images d’un document Word sont représentées à l’aide d’objets de forme. Par conséquent, pour récupérer des images, vous devrez traiter chaque forme du document. Voici les étapes pour extraire des images d’un document Word DOCX en Java.

L’exemple de code suivant montre comment extraire des images d’un document DOCX en Java.

// Charger le document Word
Document doc = new Document("Document.docx");

// Obtenez toutes les formes
NodeCollection<Shape> shapes = (NodeCollection<Shape>) doc.getChildNodes(NodeType.SHAPE, true);
int imageIndex = 0;

// Boucle à travers la collection de formes
for (Shape shape : shapes) {
  
    // Vérifiez si la forme a une image
    if (shape.hasImage()) {
      
        // Extraire et enregistrer l'image
        String imageFileName = String.format(
                "Image.ExportImages.{0}_out_{1}", imageIndex, FileFormatUtil.imageTypeToExtension(shape.getImageData().getImageType()));
        shape.getImageData().save(dataDir + imageFileName);
        imageIndex++;
    }
}

Obtenez une licence API gratuite

Obtenez une licence temporaire gratuite pour utiliser Aspose.Words for Java sans limitation d’évaluation.

Conclusion

Dans cet article, vous avez appris à extraire des images d’un document Word à l’aide de Java. De plus, l’exemple de code a montré comment extraire les images d’un fichier DOCX et les enregistrer à l’emplacement souhaité. En outre, Aspose.Words for Java fournit un large éventail de fonctionnalités pour la manipulation de documents. Pour explorer ces fonctionnalités, vous pouvez consulter la documentation. Vous pouvez également poser vos questions via notre forum.

Voir également

Info : Vous pourriez être intéressé par une autre API Java (Aspose.Slides for Java) qui permet de convertir des présentations (en PDF, documents word, etc.) et d’importer des images ou d’autres documents dans des présentations.