Як витягти текст, зображення та метадані з документів Word у .NET
Витяг тексту, зображень та метаданів з Word-документів є необхідним для аналізу та обробки документів. Aspose.Words для .NET, розробники можуть програматично отримувати вміст документів і властивості для різних випадків використання, таких як індексування, архівування або контент-трансформація.
Передумови
- Install the Створення .NET SDK.
- Додайте пакет Aspose.Words NuGet:
dotnet add package Aspose.Words
- Завантажити документ (
document.docx
) з текстом, зображеннями та метаданими.
Крок за кроком Посібник для екстракції контенту з файлів Word
1.Завантажити документ слова
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
}
}
Пояснення: Цей код завантажує зазначений документ Word в пам’ять для подальшого обробки.
Витяг тексту з документа
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
}
}
Пояснення: Цей код витягує весь текст з завантаженого Word-документу і друкує його на консоль.
Витяг метаданів з документа
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
}
}
Пояснення: Цей код витягує і друкує заголовок, автора і метаданни дати створення з документа Word.
Витяг зображень з документа
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.");
}
}
Пояснення: Цей код витягує всі зображення з документа Word і зберігає їх як файли PNG в проектному каталозі.
5 Випробування рішення
- Ensure
document.docx
is in the project directory. - Завантажити програму та перевірити:- Витягнутий текст у вихід консолі.
- Детальніше метаданни друковані.
- Витягнуті зображення збереглися в папці проекту.
Як запустити і запустити на великих платформах
Windows
- Завантажити .NET Runtime і запустити додаток.
- Перевірте програму, запускаючи її через командну лінію.
Linux
- Завантажити .NET Runtime.
- Використовуйте термінові команди для виконання програми або хостингу на сервері.
МАКОС
- Виконайте програму за допомогою Kestrel або розмістіть її в облачному сервісі.
Загальні питання та рішення
Зображення, які не були вилучені:- Переконайтеся, що документ містить вбудовані зображення, а не зовнішньо пов’язані з ними.
Недостатня кількість даних:- Переконайтеся, що документ має метаданні властивості, такі як набір заголовку або автора.
Використання файлів для обробки файлів:- Використовуйте пам’ятно-ефективний підхід, наприклад, обробка конкретних розділів документа.
За допомогою цього посібника ви можете програматично витягти цінний контент з Word-документів за допомогою Aspose.Words для .NET.