استخراج الوسائط من مستندات Word

كيفية استخراج النصوص والصور والبيانات الوصفية من مستندات Word في .NET

استخراج النصوص والصور والبيانات الوصفية من مستندات Word أمر أساسي لتحليل المستندات ومعالجتها. باستخدام Aspose.Words for .NET، يمكن للمطورين استرجاع محتوى المستند وخصائصه برمجيًا لمجموعة متنوعة من الاستخدامات، مثل الفهرسة أو الأرشفة أو تحويل المحتوى.

المتطلبات الأساسية

  1. قم بتثبيت .NET SDK.
  2. أضف حزمة Aspose.Words من NuGet: dotnet add package Aspose.Words
  3. أعد مستند Word (document.docx) يحتوي على نصوص وصور وبيانات وصفية.

دليل خطوة بخطوة لاستخراج المحتوى من ملفات Word

1. تحميل مستند Word

using System;
using Aspose.Words;

class Program
{
    static void Main()
    {
        // الخطوة 1: تحميل مستند Word
        string filePath = "document.docx";
        Document doc = new Document(filePath);

        // سيتم إضافة الخطوات 2 و 3 و 4 أدناه
    }
}

تفسير: يقوم هذا الكود بتحميل مستند Word المحدد في الذاكرة لمزيد من المعالجة.

2. استخراج النص من المستند

using System;
using Aspose.Words;

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

        // الخطوة 2: استخراج النص
        string text = doc.GetText();
        Console.WriteLine("النص المستخرج: " + text);

        // سيتم إضافة الخطوات 3 و 4 أدناه
    }
}

تفسير: يقوم هذا الكود باستخراج جميع محتويات النص من مستند Word المحمّل ويقوم بطباعته على وحدة التحكم.

3. استخراج البيانات الوصفية من المستند

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("النص المستخرج: " + text);

        // الخطوة 3: استخراج البيانات الوصفية
        Console.WriteLine("العنوان: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("المؤلف: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("تاريخ الإنشاء: " + doc.BuiltInDocumentProperties.CreatedTime);

        // سيتم إضافة الخطوة 4 أدناه
    }
}

تفسير: يقوم هذا الكود باستخراج وطباعة البيانات الوصفية مثل العنوان والمؤلف وتاريخ الإنشاء من مستند Word.

4. استخراج الصور من المستند

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("النص المستخرج: " + text);

        Console.WriteLine("العنوان: " + doc.BuiltInDocumentProperties.Title);
        Console.WriteLine("المؤلف: " + doc.BuiltInDocumentProperties.Author);
        Console.WriteLine("تاريخ الإنشاء: " + doc.BuiltInDocumentProperties.CreatedTime);

        // الخطوة 4: استخراج الصور
        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($"تم حفظ الصورة: {imageFilePath}");
            }
        }

        Console.WriteLine("اكتمل استخراج المحتوى.");
    }
}

تفسير: يقوم هذا الكود باستخراج جميع الصور من مستند Word وحفظها كملفات PNG في دليل المشروع.

5. اختبار الحل

  • تأكد من أن document.docx موجود في دليل المشروع.
  • قم بتشغيل البرنامج وتحقق من:
    • النص المستخرج في مخرجات وحدة التحكم.
    • تفاصيل البيانات الوصفية المطبوعة.
    • الصور المستخرجة المحفوظة في مجلد المشروع.

كيفية النشر والتشغيل على الأنظمة الأساسية الرئيسية

ويندوز

  1. قم بتثبيت وقت تشغيل .NET ونشر التطبيق.
  2. اختبر التطبيق عن طريق تشغيله عبر سطر الأوامر.

لينكس

  1. قم بتثبيت وقت تشغيل .NET.
  2. استخدم أوامر الطرفية لتنفيذ التطبيق أو استضافته على خادم.

macOS

  1. قم بتشغيل التطبيق باستخدام Kestrel أو نشره على خدمة سحابية.

المشكلات الشائعة وإصلاحاتها

  1. عدم استخراج الصور:
    • تأكد من أن المستند يحتوي على صور مدمجة وليس روابط خارجية.
  2. البيانات الوصفية مفقودة:
    • تحقق من أن المستند يحتوي على خصائص البيانات الوصفية مثل العنوان أو المؤلف محددة.
  3. معالجة الملفات الكبيرة:
    • استخدم نهجًا موفرًا للذاكرة، مثل معالجة أقسام محددة من المستند.

مع هذا الدليل، يمكنك استخراج محتوى قيم من مستندات Word برمجيًا باستخدام Aspose.Words for .NET.

 عربي