Les images jouent un rôle important pour illustrer les informations clés dans les documents Word. De plus, ils rendent le document plus attractif et améliorent sa présentation. En tant que programmeur, vous pouvez obtenir un travail pour extraire les images intégrées dans les documents Word DOCX ou DOC. Pour y parvenir, cet article explique comment extraire des images de documents Word par programmation à l’aide de C#. De plus, vous verrez comment enregistrer les images extraites à l’emplacement souhaité.
API C# pour extraire des images de documents Word
Pour extraire des images de documents MS Word DOCX/DOC, nous utiliserons Aspose.Words for .NET. Il s’agit d’une API puissante et largement utilisée pour créer et manipuler des documents Word. Vous pouvez télécharger la DLL de l’API et ajouter sa référence à votre application. En outre, vous pouvez l’installer directement à partir de NuGet à l’aide de la console du gestionnaire de packages.
PM> Install-Package Aspose.Words
Extraire des images d’un document Word en C#
Dans les documents Word, les images sont représentées sous forme de formes. Par conséquent, pour extraire des images, vous devrez traiter toutes les formes du document. Voici les étapes pour extraire des images d’un document Word DOCX par programmation en C#.
- Chargez le fichier Word à l’aide de la classe Document.
- Obtenez toutes les formes qui ont des images dans un IEnumerable objet utilisant la méthode Document.GetChildNodes(NodeType.Shape, Boolean).
- Parcourez les formes récupérées.
- À chaque itération, extrayez l’image et enregistrez-la à l’aide de la méthode Shape.ImageData.Save(string).
L’exemple de code suivant montre comment extraire des images d’un document Word en C#.
// Chargez le document Word.
Document doc = new Document("Document.docx");
// Les nœuds de forme dont l'indicateur "HasImage" est défini contiennent et affichent des images.
IEnumerable<Shape> shapes = doc.GetChildNodes(NodeType.Shape, true)
.OfType<Shape>().Where(s => s.HasImage);
int imageIndex = 0;
// Boucle à travers les formes.
foreach (Shape shape in shapes)
{
// Sauvegardez les images.
string imageFileName =
$"Image_{imageIndex}{FileFormatUtil.ImageTypeToExtension(shape.ImageData.ImageType)}";
shape.ImageData.Save(imageFileName);
imageIndex++;
}
Essayez gratuitement Aspose.Words for .NET
Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.Words for .NET sans aucune limitation. Obtenez votre licence temporaire maintenant.
Conclusion
Les images sont devenues partie intégrante des documents Word, ce qui rend le contenu plus attrayant. Par conséquent, Aspose.Words for .NET fournit un large éventail de fonctionnalités pour ajouter ou manipuler des images dans des documents Word.
Cet article a notamment traité de l’extraction d’images à partir de documents Word. À l’aide d’un exemple de code, vous avez appris à extraire chaque image d’un fichier Word DOCX/DOC par programmation à l’aide de C#. De plus, vous avez vu comment enregistrer les images extraites à l’emplacement souhaité. Vous pouvez en savoir plus sur Aspose.Words for .NET en utilisant la documentation. Si vous avez des questions, n’hésitez pas à nous en faire part via notre forum.
Voir également
- Créer des documents Word en C# sans MS Office
- Générer des documents Word à partir de modèles en C# .NET
Conseil : Si vous avez besoin d’obtenir un document Word à partir d’une présentation PowerPoint, vous pouvez utiliser le convertisseur Aspose Presentation to Word Document.