Extract Media from Word Documents

How to Extract Text, Images, and Metadata from Word Documents in .NET

Text, Bilder und Metadaten aus Word-Dokumenten zu extrahieren ist für die Dokumentanalyse und Verarbeitung unerlässlich. Aspose.Words für .NET ermöglicht Entwickler programmatisch Dokumentinhalt und Eigenschaften für verschiedene Verwendungsfälle wie Indexierung, Archivierung oder Content Transformation.

Voraussetzung

  • Install the .mit .NET SDK .
  • Fügen Sie das Aspose.Words NuGet Paket hinzu:dotnet add package Aspose.Words
  • Erstellung eines Textdokuments (document.docx) mit Text, Bilder und Metadaten.

Schritt für Schritt Guide zum Extrahieren von Inhalten aus Word-Dateien

1. Laden Sie das Wortdokument

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        // Step 1: Load the Word document
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // Steps 2, 3, and 4 will be added below
    }
}

Erklärung: Dieser Code laden das angegebenes Word-Dokument in das Gedächtnis für weitere Verarbeitung.

2. Text aus dem Dokument zu extrahieren

using System;
using Aspose.Words;

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

        // Step 2: Extract Text
        string text = doc.GetText();
        Console.WriteLine("Extracted Text: " + text);

        // Steps 3 and 4 will be added below
    }
}

Erklärung: Dieser Code extrahiert alle Textinhalte aus dem hochgeladenen Word-Dokument und druckt es auf die Konsole.

3. Metadaten aus dem Dokument extrahieren

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("Extracted Text: " + text);

        // Step 3: Extract Metadata
        Console.WriteLine("Title: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("Author: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("Created Date: " + doc.BuiltInDocumentProperties.CreatedTime);

        // Step 4 will be added below
    }
}

Erklärung: Dieser Code extrahiert und druckt den Titel, den Autor und den Erstellungsdatum der Metadaten aus dem Word-Dokument.

4. Entfernen von Bildern aus dem Dokument

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("Extracted Text: " + text);

        Console.WriteLine("Title: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("Author: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("Created Date: " + doc.BuiltInDocumentProperties.CreatedTime);

        // Step 4: Extract 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($"Saved Image: {imageFilePath}");
            }
        }

        Console.WriteLine("Content extraction completed.");
    }
}

Erklärung: Dieser Code extrahiert alle Bilder aus dem Word-Dokument und speichert sie als PNG-Dateien im Projekt-Dokument.

5. Die Lösung testen

  • Ensure document.docx is in the project directory.
  • Laden Sie das Programm aus und überprüfen Sie:- Text in der Konsole-Ausgabe.
  • Metadata Details gedruckt.
  • Die extrahierten Bilder sind in der Projektmappe gespeichert.

Wie man auf wichtigen Plattformen implementiert und läuft

Windows

  • Installieren Sie die .NET Runtime und implementieren Sie die Anwendung.
  • Prüfen Sie die Anwendung, indem Sie sie über die Befehllinie ausführen.

Linux

  • Installieren Sie die .NET Runtime.
  • Verwenden Sie Terminalkommandos, um die Anwendung auszuüben oder sie auf einem Server zu verwalten.

MacOS

  • Laden Sie die Anwendung mit Kestrel aus oder implementieren Sie sie auf einem Cloud-Dienst.

Gemeinsame Probleme und Fixes

  • Bilder, die nicht extrahiert wurden:- Stellen Sie sicher, dass das Dokument eingebettete Bilder und nicht äußerlich verbundene Bilder enthält.

  • Metadaten verschwinden:- Stellen Sie sicher, dass das Dokument Metadatenigenschaften wie Titel oder Autor Set hat.

  • Lange Dateiverarbeitung:- Verwenden Sie eine Speichereffiziente Ansatz, z. B. die Verarbeitung bestimmter Abschnitte des Dokuments.

Mit diesem Leitfaden können Sie wertvolle Inhalte aus Word-Dokumenten mit Aspose.Words für .NET programmatisch extrahieren.

 Deutsch