Ekstrakcja mediów z dokumentów Word

Jak wyodrębnić tekst, obrazy i metadane z dokumentów Word w .NET

Ekstrakcja tekstu, obrazów i metadanych z dokumentów Word jest niezbędna do analizy i przetwarzania dokumentów. Dzięki Aspose.Words dla .NET, deweloperzy mogą programowo pobierać zawartość dokumentu oraz właściwości do różnych zastosowań, takich jak indeksowanie, archiwizowanie czy transformacja treści.

Wymagania wstępne

  1. Zainstaluj .NET SDK.
  2. Dodaj pakiet NuGet Aspose.Words: dotnet add package Aspose.Words
  3. Przygotuj dokument Word (document.docx) z tekstem, obrazami i metadanymi.

Przewodnik krok po kroku dotyczący ekstrakcji zawartości z plików Word

1. Załaduj dokument Word

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        // Krok 1: Załaduj dokument Word
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // Kroki 2, 3 i 4 zostaną dodane poniżej
    }
}

Wyjaśnienie: Ten kod ładuje określony dokument Word do pamięci w celu dalszego przetwarzania.

2. Ekstrakcja tekstu z dokumentu

using System;
using Aspose.Words;

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

        // Krok 2: Ekstrakcja tekstu
        string text = doc.GetText();
        Console.WriteLine("Wyekstrahowany tekst: " + text);

        // Kroki 3 i 4 zostaną dodane poniżej
    }
}

Wyjaśnienie: Ten kod wyodrębnia całą zawartość tekstową z załadowanego dokumentu Word i wypisuje ją na konsolę.

3. Ekstrakcja metadanych z dokumentu

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("Wyekstrahowany tekst: " + text);

        // Krok 3: Ekstrakcja metadanych
        Console.WriteLine("Tytuł: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("Autor: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("Data utworzenia: " + doc.BuiltInDocumentProperties.CreatedTime);

        // Krok 4 zostanie dodany poniżej
    }
}

Wyjaśnienie: Ten kod wyodrębnia i wypisuje tytuł, autora oraz datę utworzenia metadanych z dokumentu Word.

4. Ekstrakcja obrazów z dokumentu

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("Wyekstrahowany tekst: " + text);

        Console.WriteLine("Tytuł: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("Autor: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("Data utworzenia: " + doc.BuiltInDocumentProperties.CreatedTime);

        // Krok 4: Ekstrakcja obrazów
        int imageCount = 0;
        foreach (var shape in doc.GetChildNodes(NodeType.Shape, true))
        {
            if (shape is Shape { HasImage: true } imageShape)
            {
                string imageFilePath = $"Obraz_{++imageCount}.png";
                imageShape.ImageData.Save(imageFilePath);
                Console.WriteLine($"Zapisano obraz: {imageFilePath}");
            }
        }

        Console.WriteLine("Ekstrakcja zawartości zakończona.");
    }
}

Wyjaśnienie: Ten kod wyodrębnia wszystkie obrazy z dokumentu Word i zapisuje je jako pliki PNG w katalogu projektu.

5. Testowanie rozwiązania

  • Upewnij się, że document.docx znajduje się w katalogu projektu.
  • Uruchom program i zweryfikuj:
    • Wyekstrahowany tekst w wyjściu konsoli.
    • Wydrukowane szczegóły metadanych.
    • Wyekstrahowane obrazy zapisane w folderze projektu.

Jak wdrożyć i uruchomić na głównych platformach

Windows

  1. Zainstaluj środowisko uruchomieniowe .NET i wdroż aplikację.
  2. Przetestuj aplikację, uruchamiając ją z poziomu wiersza poleceń.

Linux

  1. Zainstaluj środowisko uruchomieniowe .NET.
  2. Użyj poleceń terminala, aby wykonać aplikację lub hostować ją na serwerze.

macOS

  1. Uruchom aplikację za pomocą Kestrel lub wdroż ją w usłudze chmurowej.

Typowe problemy i rozwiązania

  1. Obrazy nie zostały wyodrębnione:
    • Upewnij się, że dokument zawiera osadzone obrazy, a nie obrazy powiązane zewnętrznie.
  2. Brak metadanych:
    • Sprawdź, czy dokument ma ustawione właściwości metadanych, takie jak Tytuł lub Autor.
  3. Przetwarzanie dużych plików:
    • Użyj podejścia oszczędzającego pamięć, na przykład przetwarzając określone sekcje dokumentu.

Dzięki temu przewodnikowi możesz programowo wyodrębniać cenną zawartość z dokumentów Word za pomocą Aspose.Words dla .NET.

 Polski