Extraire des images de DOCX avec C# / IronWord

This article was translated from English: Does it need improvement?
Translated
View the article in English

La méthode ExtractImages() d'IronWord vous permet d'extraire par programme toutes les images intégrées dans les documents Word, en donnant accès aux données et métadonnées de l'image telles que les dimensions et le format pour l'enregistrement ou le traitement.

Démarrage rapide : extraction d'images à partir de DOCX en C#

```csharp {title="Quick Image Extraction Example"} // Installer IronWord : Installer-Package IronWord à l'aide d'IronWord ;

// Chargez votre document Word WordDocument doc = new WordDocument("document.docx") ;

// Extraire toutes les images var images = doc.ExtractImages() ;

// Enregistrer chaque image avec un nom personnalisé int imageIndex = 0 ; foreach (var image in images) { // Enregistrer au format spécifié image.SaveAs($"output-{imageIndex}.png") ;

// Accéder aux propriétés de l'image
Console.WriteLine($"Image {imageIndex} : {image.Width}x{image.Height}") ;
imageIndex++ ;

}


L'extraction d'images à partir de documents Word est une exigence courante pour la migration de contenu, la gestion des médias et le traitement programmatique des documents. Que vous construisiez un système de gestion de contenu, que vous automatisiez des flux de documents ou que vous créiez des archives numériques, IronWord simplifie l'accès aux images intégrées, permettant de les enregistrer, de les réutiliser ou de les analyser grâce à des propriétés telles que les dimensions et le format.

La fonction `ExtractImages()` offre un moyen simple et efficace de récupérer toutes les images d'un document et d'accéder à leurs métadonnées pour un traitement ultérieur. Cette méthode renvoie une collection d'objets image qui contiennent à la fois les données brutes de l'image et des propriétés de métadonnées utiles. Pour les développeurs travaillant avec des [présentations PowerPoint](https://ironsoftware.com/csharp/ppt/examples/create-empty-presentation/), des fonctionnalités similaires existent dans d'autres bibliothèques Iron, ce qui démontre une conception cohérente de l'API dans l'ensemble de la suite de produits.

### Comment commencer avec IronWord?

Commencez à utiliser IronWord dans votre projet aujourd'hui avec un essai gratuit.

Première étape :
green arrow pointer
--- <div class="hsg-featured-snippet"> <h2>Comment extraire des images de DOCX</h2> <ol> <li>Télécharger une bibliothèque C# pour l'extraction d'images à partir de DOCX</li> <li>Charger un document Word existant</li> <li>Accédez au contenu des images et extrayez-le à l&#39;aide <code>ExtractImages</code></li> <li>Enregistrer les images extraites sur le disque</li> <li>Traiter ou exporter les fichiers images</li> </ol> </div> ## Comment extraire des images d'un document Word? <TODO : Ajouter une image ici --> <!-- ![Diagramme illustrant l'exemple d'implémentation d'images extraites](/static-assets/images/TODO/extract-images-example-code_illustration.webp) --> <Description : Diagramme ou capture d'écran illustrant le concept de code --> Extraire des images d&#39;un document Word est simple avec IronWord. Le fichier `embedded_images.docx` sera utilisé comme fichier d'exemple qui comprend 5 images sur 3 pages différentes. L'extrait de code ci-dessous définit le flux de travail principal pour le processus d'extraction d'images à l'aide de la méthode `ExtractImages()`. Lorsque vous travaillez avec des bibliothèques de traitement de documents, il est essentiel de comprendre les [conditions de licence](https://ironsoftware.com/csharp/ppt/licensing/) afin de vous assurer que votre application respecte les conditions d'utilisation. IronWord suit des modèles de licence similaires aux autres produits Iron, offrant des licences perpétuelles avec des options d'assistance complètes. Pour les déploiements en production, vous devrez appliquer des [clés de licence](https://ironsoftware.com/csharp/ppt/get-started/license-keys/) pour supprimer tout filigrane ou restriction. ```csharp :path=/static-assets/word/content-code-examples/how-to/extract-images-properties.cs

La méthode ExtractImages() renvoie une collection énumérable d'objets image, chacun contenant les données complètes de l'image ainsi que des métadonnées. Cette approche permet des flux de traitement flexibles : vous pouvez enregistrer les images sur disque comme indiqué ci-dessus, les convertir dans différents formats ou les diffuser directement vers des services de stockage en nuage. La méthode prend en charge différents formats d'image couramment intégrés dans les documents Word, notamment JPEG, PNG, BMP et GIF.

À quoi ressemble l'exemple de document ?
Document Word avec images intégrées : Logo Google, silhouettes de tête, scène de galaxie, lion et pierres de zen
### À quel résultat dois-je m'attendre?
Console de débogage montrant 5 images extraites avec les dimensions et les noms de fichiers extracted-image-0.png à extracted-image-4.png
Les images extraites conservent leur format d'origine (par exemple, `.jpg`, `.png`, ou d'autres formats) et peuvent être enregistrées avec les extensions de fichier appropriées. Vous pouvez parcourir toutes les images du document ou cibler des sections spécifiques en fonction de vos besoins. ## Scénarios avancés d'extraction d'images Au-delà de l'extraction de base, les capacités de traitement des images d'IronWord prennent en charge plusieurs scénarios avancés que les développeurs rencontrent fréquemment dans les applications de production : **Traitement par lots de plusieurs documents** : Lorsque vous traitez de grandes collections de documents, vous pouvez mettre en œuvre un traitement parallèle pour extraire simultanément des images de plusieurs fichiers Word. Cette approche permet de réduire considérablement le temps de traitement des archives de documents ou des projets de migration de contenu. **Conversion de format d'image** : les objets d'image extraits prennent en charge la conversion entre les formats. Vous pouvez extraire un JPEG d'un document Word et l'enregistrer au format PNG pour l'optimiser pour le web, ou le convertir au format WebP pour le rendre compatible avec les navigateurs modernes. : chaque image extraite conserve des métadonnées importantes, notamment les dimensions, la résolution et la profondeur des couleurs. Ces informations s'avèrent précieuses lors de la mise en œuvre de pipelines d'optimisation d'images ou du maintien de normes de qualité dans l'ensemble de votre application. Pour les applications d'entreprise nécessitant une assistance continue et des mises à jour régulières, envisagez d'explorer les [extensions de licence](https://ironsoftware.com/csharp/ppt/licensing/extensions/) qui offrent un accès continu aux nouvelles fonctionnalités et une assistance prioritaire. Si la portée de votre projet s'élargit, les options de mise à niveau [mise à niveau](https://ironsoftware.com/csharp/ppt/licensing/upgrades/) permettent une mise à l'échelle transparente pour couvrir des développeurs ou des lieux de déploiement supplémentaires. ## Intégration avec les flux de documents L'extraction d'images fait souvent partie de flux de travail plus larges de traitement de documents. Considérez ces modèles d'intégration courants : **Systèmes de gestion de contenu** : Extraction d'images lors du téléchargement de documents pour créer des aperçus de vignettes, construire des galeries d'images ou alimenter des bibliothèques de médias. Les images extraites peuvent être indexées pour les fonctions de recherche ou étiquetées avec des métadonnées de document. **Pipeline de conversion de documents** : Lors de la conversion de documents Word vers d'autres formats, les images extraites peuvent être traitées séparément pour une qualité optimale. Cette séparation permet d'optimiser les formats spécifiques, par exemple en appliquant des paramètres de compression différents selon qu'il s'agit d'une sortie sur le web ou d'une sortie imprimée. **Flux de travail d'assurance qualité** : L'extraction automatisée permet d'examiner systématiquement les images intégrées pour s'assurer qu'elles sont conformes aux directives de la marque, aux exigences de résolution ou aux contraintes de taille de fichier. Vous pouvez signaler les documents contenant des images de faible résolution ou des formats incorrects avant leur publication. Pour vous tenir au courant des dernières fonctionnalités et améliorations apportées aux capacités de traitement des documents, consultez régulièrement le [journal des modifications apportées au produit](https://ironsoftware.com/csharp/ppt/product-updates/changelog/). Les nouvelles versions incluent souvent des améliorations de performance et une prise en charge élargie des formats qui peuvent bénéficier à vos flux de travail d'extraction d'images. ## Considérations de Performance Lorsque vous travaillez avec des documents contenant de nombreuses images ou des images haute résolution, pensez à ces stratégies d'optimisation des performances : **Gestion de la mémoire** : Traiter les images par lots plutôt que de charger simultanément toutes les images en mémoire. Cette approche permet d'éviter l'épuisement de la mémoire lorsqu'il s'agit de documents volumineux ou d'images à haute résolution. **Traitement asynchrone** : mettre en œuvre des modèles asynchrones/attendus pour les opérations d'E/S, en particulier lors de l'enregistrement d'images extraites sur le disque ou sur le réseau. Cela permet à votre application de rester réactive pendant les longues opérations d'extraction. **Extraction sélective** : si vous n'avez besoin que d'images spécifiques, envisagez de mettre en place des filtres basés sur les propriétés de l'image ou la structure du document afin d'éviter de traiter du contenu inutile. La conception robuste de l'API garantit un comportement cohérent entre les différents types de documents et formats d'images, ce qui facilite l'intégration de fonctions d'extraction d'images fiables dans vos applications .NET.

Questions Fréquemment Posées

Comment extraire des images d'un fichier DOCX en C# ?

Vous pouvez extraire des images de fichiers DOCX à l'aide de la méthode ExtractImages() d'IronWord. Chargez simplement votre document Word avec WordDocument doc = new WordDocument("document.docx"), puis appelez doc.ExtractImages() pour récupérer toutes les images incorporées. Chaque image peut être enregistrée à l'aide de la méthode SaveAs() dans le format et le nom de fichier de votre choix.

Quelles sont les propriétés des images auxquelles je peux accéder lorsque j'extrais des images de documents Word ?

IronWord permet d'accéder à d'importantes métadonnées d'images, notamment les dimensions Largeur et Hauteur. La méthode ExtractImages() renvoie une collection d'objets image qui contiennent à la fois les données brutes de l'image et ces propriétés de métadonnées, ce qui vous permet d'analyser ou de traiter les images de manière programmatique en fonction de leurs caractéristiques.

Puis-je enregistrer les images extraites dans différents formats ?

Oui, IronWord vous permet d'enregistrer les images extraites dans différents formats. Utilisez la méthode SaveAs() sur chaque objet image et spécifiez le nom de fichier souhaité avec l'extension appropriée (par exemple, .png, .jpg). La bibliothèque se charge automatiquement de la conversion de format en fonction de l'extension de fichier que vous avez fournie.

Comment installer la bibliothèque d'extraction d'images à partir de documents Word ?

Installez IronWord via le gestionnaire de paquets NuGet à l'aide de la commande : Install-Package IronWord. Une fois installé, ajoutez " using IronWord ; " à votre fichier C# pour accéder à la fonctionnalité d'extraction d'images et à d'autres fonctions de traitement de documents.

Est-il possible d'extraire des images de documents Word multipages ?

Oui, la méthode ExtractImages() d'IronWord extrait toutes les images de l'ensemble du document Word, quel que soit le nombre de pages qu'il contient. La méthode renvoie une collection complète de toutes les images intégrées dans le document, qu'elles se trouvent sur une page ou qu'elles soient réparties sur plusieurs pages.

Ahmad Sohail
Développeur Full Stack

Ahmad est un développeur full-stack avec une solide fondation en C#, Python et technologies web. Il a un profond intérêt pour la construction de solutions logicielles évolutives et aime explorer comment le design et la fonctionnalité se rencontrent dans des applications du monde réel.

<...
Lire la suite
Prêt à commencer?
Nuget Téléchargements 28,054 | Version : 2025.12 vient de sortir