
يمكن أن يكون استخراج الجداول من ملفات PDF مهمة شائعة عند التعامل مع استخراج البيانات أو تحليلها. سواء كنت تحاول استرداد الجداول للمعالجة أو تصديرها لمزيد من الاستخدام، فإن أتمتة هذه العملية يمكن أن توفر الوقت والجهد. في منشور المدونة هذا، سنوضح لك كيفية استخراج الجداول من ملف PDF بلغة C# أو تصدير البيانات المستخرجة إلى ملف CSV.
سنقوم بتغطية الأقسام التالية في هذه المقالة:
- لماذا استخراج الجداول من PDF؟
- استخراج جدول PDF - تكوين واجهة برمجة التطبيقات C#
- استخراج جدول من PDF في C#
- تحويل بيانات الجدول من PDF إلى CSV في C#
لماذا استخراج الجداول من PDF؟
تُستخدم ملفات PDF على نطاق واسع لمشاركة المعلومات بتنسيق محمول. ومع ذلك، قد يكون استخراج البيانات المنظمة مثل الجداول أمرًا صعبًا لأن ملفات PDF ليست مصممة للتحرير أو المعالجة السهلة. من خلال استخراج بيانات الجدول برمجيًا باستخدام C#، يمكنك جعل البيانات أكثر سهولة في الوصول إليها، مما يسمح لك بتحليل البيانات أو تعديلها أو تخزينها بتنسيقات مختلفة مثل CSV، والذي يُستخدم على نطاق واسع لتبادل البيانات بين التطبيقات المختلفة.
استخراج جدول PDF - تكوين واجهة برمجة التطبيقات C#
يمكنك استخراج البيانات من جداول PDF عن طريق تكوين Conholdate.Total لـ .NET باستخدام أمر تثبيت NuGet أدناه:
PM> NuGet\Install-Package Conholdate.Total
استخراج جدول من PDF في C#
في هذا القسم، سنتعرف على كيفية استخراج الجداول من مستند PDF باستخدام C#.
- تحميل مستند PDF: يبدأ الكود بتحميل ملف PDF إلى كائن فئة المستند.
- ممتص الجدول: يتم استخدام فئة TableAbsorber لاكتشاف وامتصاص الجداول الموجودة في كل صفحة من صفحات ملف PDF.
- استخراج بيانات الجدول: يتكرر الكود في كل جدول تم العثور عليه، ويستخرج محتوى كل خلية في الجدول، ويطبعها بتنسيق منظم.
توفر هذه الطريقة طريقة فعّالة للوصول إلى البيانات الجدولية من مستندات PDF، مما يتيح لك العمل بالمعلومات برمجيًا. يوضح مقطع التعليمات البرمجية أدناه استخراج الجدول بلغة C#:
// تحميل مستند PDF المصدر
var filePath = "input.pdf";
Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(filePath);
foreach (var page in pdfDocument.Pages)
{
Aspose.Pdf.Text.TableAbsorber absorber = new Aspose.Pdf.Text.TableAbsorber();
absorber.Visit(page);
foreach (AbsorbedTable table in absorber.TableList)
{
Console.WriteLine("Table");
foreach (AbsorbedRow row in table.RowList)
{
foreach (AbsorbedCell cell in row.CellList)
{
foreach (TextFragment fragment in cell.TextFragments)
{
var sb = new StringBuilder();
foreach (TextSegment seg in fragment.Segments)
sb.Append(seg.Text);
Console.Write("{sb.ToString()}|");
}
}
Console.WriteLine();
}
}
}
تحويل بيانات جدول PDF إلى CSV في C#
بمجرد استخراج بيانات الجدول من ملف PDF، قد ترغب في حفظها بتنسيق أكثر سهولة في الوصول مثل CSV. يدعم تنسيق CSV (القيم المفصولة بفواصل) على نطاق واسع تطبيقات مثل Microsoft Excel وGoogle Sheets والعديد من أنظمة معالجة البيانات. في هذا القسم، سنقوم بتحويل بيانات جدول PDF إلى CSV في C#:
تُظهر الخطوات التالية كيفية تصدير البيانات من جداول PDF إلى تنسيق CSV في C#:
- تحميل مستند PDF: يتم تحميل مستند PDF إلى كائن المستند كما في السابق.
- ExcelSaveOptions: يتم إنشاء مثيل لـ ExcelSaveOptions بتنسيق CSV. وهذا يضمن تصدير بيانات الجدول من ملف PDF مباشرة كملف CSV.
- حفظ ملف CSV: يتم استدعاء طريقة الحفظ لتصدير بيانات جدول PDF إلى ملف .csv.
يوضح نموذج التعليمات البرمجية أدناه كيفية تحويل جدول PDF إلى تنسيق CSV في C#:
// تحميل مستند PDF
Document pdfDocument = new Document("input.pdf");
// إنشاء كائن خيار ExcelSave
ExcelSaveOptions excelSave = new ExcelSaveOptions { Format = ExcelSaveOptions.ExcelFormat.CSV };
// احفظ الناتج بصيغة XLS
pdfDocument.Save("PDFToXLS_out.xlsx", excelSave);
احصل على ترخيص مجاني
يمكنك الحصول على ترخيص مؤقت مجاني لاختبار ميزات مختلفة لواجهة برمجة التطبيقات دون أي قيود تقييمية.
تلخيص
يمكن جعل استخراج الجداول من ملف PDF وتصدير البيانات إلى تنسيق CSV في C# أمرًا بسيطًا وفعالًا في C#. تساعد القدرة على أتمتة استخراج الجداول في السيناريوهات التي تحتاج فيها إلى تحليل أو مشاركة بيانات جدولية من ملفات PDF بتنسيق أكثر مرونة مثل CSV. باتباع الخطوات الواردة في منشور المدونة هذا، يمكنك بسهولة استرداد بيانات الجدول وتخزينها من ملفات PDF الخاصة بك. هذه العملية مفيدة بشكل خاص في تحليل البيانات أو إعداد التقارير أو أي مهمة تتطلب بيانات منظمة من مستندات PDF صارمة بخلاف ذلك. في حالة وجود أي استفسارات، يرجى الاتصال بنا على المنتدى.