Jak wyodrębnić tekst, obrazy i metadane z dokumentów Word w .NET
Ekstrakcja tekstu, obrazów i metadanych z dokumentów programu Word jest niezbędna do analizy i przetwarzania dokumentów. Aspose.Words dla .NET, deweloperzy mogą programowo odzyskać zawartość dokumentu i właściwości dla różnych przypadków użytkowania, takich jak indeksowanie, archiwizacja lub transformacja treści.
Warunki
- Instalacja The Źródło .NET SDK .
- Dodaj pakiet Aspose.Words NuGet:
dotnet add package Aspose.Words
- Przygotuj listę dokumentów (
document.docx
) z tekstem, obrazami i metadany.
Krok po kroku Przewodnik do ekstrakcji treści z plików Word
1.Wprowadź dokument słowny
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
}
}
Wyjaśnienie: Ten kod przesyła określony dokument Word do pamięci w celu dalszego przetwarzania.
2. wyciągnięcie tekstu z dokumentu
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
}
}
Wyjaśnienie: Ten kod wyciąga całą zawartość tekstu z załadowanego dokumentu Word i drukuje go na konsoli.
Wykorzystanie metadatu 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("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
}
}
Wyjaśnienie: Ten kod wyciąga i drukuje metadane tytułu, autora i daty tworzenia z dokumentu Word.
Wyciągnięcie zdjęć 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("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.");
}
}
Wyjaśnienie: Ten kod wyciąga wszystkie obrazy z dokumentu Word i przechowuje je jako pliki PNG w katalogu projektu.
5.Testowanie rozwiązania
- Zapewnienie
document.docx
Jest w dyrektywie projektu. - Wykonaj program i sprawdź:- Wyciągnięty tekst w wyjściu konsoli.
- Szczegóły metadatu drukowane.
- Wyciągnięte obrazy zapisane w folderze projektu.
Jak uruchomić i uruchomić główne platformy
Windows
- Zainstaluj czas uruchomienia .NET i uruchom aplikację.
- Test aplikacji poprzez uruchomienie jej za pośrednictwem linii poleceń.
Linux
- Zainstaluj czas pracy .NET.
- Użyj poleceń końcowych, aby wykonać aplikację lub przechowywać ją na serwerze.
MacOS
- Wykonaj aplikację za pomocą aplikacji Kestrel lub zainstaluj ją w chmurze.
Wspólne problemy i korekty
Zdjęcia nie wyciągnięte:- Upewnij się, że dokument zawiera wbudowane obrazy, a nie zewnętrznie powiązane.
brak danych:- Upewnij się, że dokument ma właściwości metadanych, takie jak ustawienie tytułu lub autora.
Przetwarzanie dużych plików:- Użyj efektywnego podejścia do pamięci, na przykład przetwarzania określonych sekcji dokumentu.
Za pomocą tego przewodnika można programowo wyciągać cenne treści z dokumentów programu Word za pomocą Aspose.Words dla .NET.