تنسيق المستندات المحمولة (PDF) هو تنسيق مستند شائع ومستخدم على نطاق واسع تم تطويره بواسطة Adobe. يمكن أن تحتوي مستندات PDF على مجموعة متنوعة من المحتوى بما في ذلك النص المنسق والصور والتعليقات التوضيحية وحقول النموذج وما إلى ذلك. يعد تحليل مستندات PDF برمجيًا حالة استخدام شائعة وهناك طرق متعددة لاستخراج النص. ومع ذلك ، فإن استخراج الصور من وثيقة PDF مهمة معقدة. توضح هذه المقالة مدى سهولة استخراج الصور من مستندات PDF برمجيًا في C#.

.NET API لاستخراج الصور من ملفات PDF

GroupDocs.Parser for .NET API سيلعب دوره في استخراج الصور من ملفات PDF. إلى جانب ملف PDF ، تدعم واجهة برمجة التطبيقات تحليل واستخراج الصور من مستندات معالجة الكلمات وجداول البيانات والكتب الإلكترونية والعروض التقديمية ورسائل البريد الإلكتروني والمحفوظات المضغوطة و العديد من تنسيقات المستندات الأخرى.

يمكنك تنزيل مثبت DLL أو MSI من قسم التنزيلات أو تثبيت API في تطبيق .NET عبر NuGet.

PM> Install-Package GroupDocs.Parser

خطوات استخراج الصور من مستند PDF باستخدام C#

دعنا ننظر بسرعة خطوة بخطوة في كيفية الحصول على الصور من ملف PDF باستخدام بضعة أسطر من كود C#.

  1. أنشئ مشروعًا جديدًا.
  2. قم بتنزيل API كما هو مذكور أعلاه أو قم بالتحديث إلى أحدث إصدار من API.
  3. أضف مساحات الأسماء التالية:
using System;
using System.Collections.Generic;
using System.Text;
using GroupDocs.Parser.Data;
  1. قم بتحميل مستند PDF باستخدام فئة Parser.
// إنشاء مثيل لفئة المحلل اللغوي
using (Parser parser = new Parser("path/document.pdf"))
{
  // الكود الخاص بك يذهب هنا.
}
  1. استخراج الصور من المستند باستخدام طريقة GetImages.
// استخراج الصور
IEnumerable<PageImageArea> images = parser.GetImages();

// تحقق مما إذا كان استخراج الصور مدعومًا
if (images == null)
{
    Console.WriteLine("Images extraction isn't supported");
    return;
}
  1. الوصول إلى كل صورة من المجموعة وحفظها باستخدام طريقة الحفظ.
// كرر على الصور المسترجعة
foreach (PageImageArea image in images)
{
    // حفظ الصور
    image.Save("imageFilePath/image-" + imageNumber.ToString() + ".jpeg", new ImageOptions(ImageFormat.Jpeg));
    imageNumber++;
}

يمكنك حفظ الصور في صور مختلفة مختلفة مثل JPG أو PNG أو BMP أو WebP أو GIF.

C# Complete Code - استخراج الصور من PDF

إليك الكود الكامل الذي سيسمح لك بالحصول على جميع الصور من ملف PDF.

// استخراج الصور من ملف PDF باستخدام C#
using (Parser parser = new Parser("path/document.pdf"))
{
    IEnumerable<PageImageArea> images = parser.GetImages();
    // تحقق مما إذا كان استخراج الصورة مدعومًا
    if (images == null) 
    {
        Console.WriteLine("Images extraction isn't supported");
        return;
    }
    
    ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
    int imageNumber = 0;
    
    // كرر على الصور المسترجعة
    foreach (PageImageArea image in images)
    {
        // حفظ الصور
        image.Save("imageFilePath/image-" + imageNumber.ToString() + ".jpeg", options);
        imageNumber++;
    }
}

نتائج

نموذج مستند PDF

وثيقة PDF بها صور لاستخراجها.

الصور المستخرجة

الصور المستخرجة من ملف PDF.

إذا كنت بحاجة إلى ذلك ، فقد تم شرحه أيضًا في مقالة منفصلة توضح كيف يمكنك استخراج الصور من أي صفحة محددة من مستند PDF باستخدام C#.

قراءة المزيد

يمكنك استكشاف المزيد حول .NET data extraction API باستخدام التوثيق. يمكنك أيضًا مشاركة استفساراتك معنا عبر المنتدى.

أنظر أيضا