Extraire des médias des documents Word

Comment extraire du texte, des images et des métadonnées des documents Word dans .NET

L’extraction de texte, d’images et de métadonnées à partir de documents Word est essentielle pour l’analyse et le traitement des documents. Avec Aspose.Words pour .NET, les développeurs peuvent récupérer programmétiquement le contenu et les propriétés des documents pour divers cas d’utilisation, tels que l’indexation, l’archivage ou la transformation de contenu.

Prérequis

  1. Installez le .NET SDK.
  2. Ajoutez le package NuGet Aspose.Words : dotnet add package Aspose.Words
  3. Préparez un document Word (document.docx) avec du texte, des images et des métadonnées.

Guide étape par étape pour extraire du contenu des fichiers Word

1. Charger le document Word

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        // Étape 1 : Charger le document Word
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // Les étapes 2, 3 et 4 seront ajoutées ci-dessous
    }
}

Explication : Ce code charge le document Word spécifié en mémoire pour un traitement ultérieur.

2. Extraire le texte du document

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // Étape 2 : Extraire le texte
        string text = doc.GetText();
        Console.WriteLine("Texte extrait : " + text);

        // Les étapes 3 et 4 seront ajoutées ci-dessous
    }
}

Explication : Ce code extrait tout le contenu textuel du document Word chargé et l’affiche dans la console.

3. Extraire les métadonnées du document

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        string text = doc.GetText();
        Console.WriteLine("Texte extrait : " + text);

        // Étape 3 : Extraire les métadonnées
        Console.WriteLine("Titre : " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("Auteur : " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("Date de création : " + doc.BuiltInDocumentProperties.CreatedTime);

        // L'étape 4 sera ajoutée ci-dessous
    }
}

Explication : Ce code extrait et affiche le titre, l’auteur et la date de création des métadonnées du document Word.

4. Extraire les images du document

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        string text = doc.GetText();
        Console.WriteLine("Texte extrait : " + text);

        Console.WriteLine("Titre : " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("Auteur : " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("Date de création : " + doc.BuiltInDocumentProperties.CreatedTime);

        // Étape 4 : Extraire les images
        int imageCount = 0;
        foreach (var shape in doc.GetChildNodes(NodeType.Shape, true))
        {
            if (shape is Shape { HasImage: true } imageShape)
            {
                string imageFilePath = $"Image_{++imageCount}.png";
                imageShape.ImageData.Save(imageFilePath);
                Console.WriteLine($"Image enregistrée : {imageFilePath}");
            }
        }

        Console.WriteLine("Extraction de contenu terminée.");
    }
}

Explication : Ce code extrait toutes les images du document Word et les enregistre en tant que fichiers PNG dans le répertoire du projet.

5. Tester la solution

  • Assurez-vous que document.docx est dans le répertoire du projet.
  • Exécutez le programme et vérifiez :
    • Le texte extrait dans la sortie de la console.
    • Les détails des métadonnées affichés.
    • Les images extraites enregistrées dans le dossier du projet.

Comment déployer et exécuter sur les principales plateformes

Windows

  1. Installez le runtime .NET et déployez l’application.
  2. Testez l’application en l’exécutant via la ligne de commande.

Linux

  1. Installez le runtime .NET.
  2. Utilisez des commandes terminal pour exécuter l’application ou l’héberger sur un serveur.

macOS

  1. Exécutez l’application en utilisant Kestrel ou déployez-la sur un service cloud.

Problèmes courants et solutions

  1. Images non extraites :
    • Assurez-vous que le document contient des images intégrées et non des images liées externément.
  2. Métadonnées manquantes :
    • Vérifiez que le document a des propriétés de métadonnées comme le Titre ou l’Auteur définies.
  3. Traitement de fichiers volumineux :
    • Utilisez une approche économe en mémoire, comme le traitement de sections spécifiques du document.

Avec ce guide, vous pouvez extraire programmétiquement du contenu précieux des documents Word en utilisant Aspose.Words pour .NET.

 Français