Hoe tekst, afbeeldingen en metadata uit Word-documenten in .NET te extraheren
Het extraheren van tekst, afbeeldingen en metadata uit Word-documenten is essentieel voor documentanalyse en verwerking. Aspose.Words voor .NET, ontwikkelaars kunnen programmatisch documentinhoud en eigenschappen voor verschillende gebruiksgevallen, zoals indexeren, archiveren of inhoud transformeren.
Voorwaarden
- Install the De .NET SDK.
- Voeg het Aspose.Words NuGet pakket toe:
dotnet add package Aspose.Words
- Voorbereid een Word document (
document.docx
met tekst, afbeeldingen en metadata.
Step-by-step gids voor het extraheren van inhoud uit Word-bestanden
1.Laden van het woord document
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
}
}
Verduidelijking: Deze code loopt het specifieke Word-document in het geheugen voor verdere verwerking.
2. tekst uit het document verwijderen
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
}
}
Verduidelijking: Deze code extract alle tekstinhoud uit het geladen Word-document en druk het op de console.
3. extract metadata uit het 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("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
}
}
Verduidelijking: Deze code extract en drukt de titel, auteur en metadata van het Word-document.
4. afbeeldingen uit het document extraheren
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.");
}
}
Verduidelijking: Deze code extract alle afbeeldingen uit het Word-document en bewaart ze als PNG-bestanden in de projectdirectie.
5 Het testen van de oplossing
- Ensure
document.docx
is in the project directory. - Voer het programma uit en controleer:- Uitgegeven tekst in de console output.
- Metadata gedetailleerd.
- Afgebeelde beelden worden opgeslagen in de projectmap.
Hoe te Deploy en Run op Major Platforms
Windows
- Installeer de .NET runtime en gebruik de applicatie.
- Test de applicatie door het via de commandlijn uit te voeren.
Linux
- Installeer de .NET runtime.
- Gebruik terminalcommandes om de applicatie uit te voeren of te hosten op een server.
macos
- Voer de applicatie met behulp van Kestrel uit of zet het op een clouddienst.
Gemeenschappelijke problemen en fixes
Afbeeldingen die niet zijn gehaald:- Zorg ervoor dat het document ingebouwde beelden bevat en niet extern verbonden beelden.
Metadata ontbreken:- Controleer of het document met metadata-eigenschappen heeft, zoals titel of auteur set.
Grote bestandsverwerking:- Gebruik een geheugen-efficiënte aanpak, zoals het verwerken van specifieke secties van het document.
Met deze gids kunt u waardevolle inhoud van Word-documenten programmatisch extraheren met behulp van Aspose.Words voor .NET.