PdfPig: استخراج پیشرفته متن PDF برای .NET
خواندن و تحلیل محتوای PDF بدون وابستگیهای خارجی - متن، موقعیتها، فونتها و متادیتا
PdfPig چیست؟
PdfPig یک کتابخانه اوپنسورس برای .NET است که روی استخراج محتوا از فایلهای PDF بدون نیاز به وابستگیهای نیتیو تمرکز دارد. برخلاف تولیدکنندههای PDF، PdfPig تخصصی در خواندن اسناد موجود برای دسترسی به متن، اطلاعات فونت، دادههای موقعیتی و ساختار سند عمل میکند. این کتابخانه بهویژه برای دادهکاوی، تحلیل محتوا و خطوط پردازش اسناد ارزشمند است.
مزایای کلیدی PdfPig:
- بدون وابستگی: پیادهسازی خالص با سیشارپ
- دسترسی سطح پایین: موقعیتیابی دقیق متن و معیارهای فونت
- بهینه در حافظه: پردازش اسناد بزرگ با سربار حداقلی
- آماده برای OCR: استخراج متن با جعبههای محدودکننده برای تحلیل
- مجوز MIT: رایگان برای استفاده تجاری
ایدهآل برای تحلیل اسناد، استخراج متن و پردازش محتوای PDF.
چرا PdfPig را انتخاب کنیم؟
- دقت: مدیریت صحیح چیدمانهای پیچیده متن PDF
- کارایی: سریعتر از کتابخانههای مشابه .NET در بنچمارکها
- شفافیت: دسترسی به ساختارهای خام PDF در صورت نیاز
- توسعه فعال: بهروزرسانیهای منظم از سال 2018
- چندسکویی: کار با .NET Standard 2.0+
نصب
PdfPig از طریق NuGet برای ادغام آسان در دسترس است:
Package Manager Console
Install-Package PdfPig
.NET CLI
dotnet add package PdfPig
نیازمندیهای سیستم: محیط اجرا سازگار با .NET Standard 2.0
نمونههای کد
نمونههای عملی از قابلیتهای PdfPig:
نمونه 1: استخراج پایهای متن
این نمونه نشان میدهد چگونه یک سند PDF را باز کرده و تمام محتوای متنی را با حفظ ترتیب خواندن استخراج کنید. PdfPig به هر حرف با موقعیت دقیق آن در سند دسترسی میدهد و امکان تحلیل پیشرفته چیدمان فراتر از استخراج ساده متن را فراهم میکند.
خروجی شامل:
- محتوای متنی خام به ترتیب خواندن
- شماره صفحه برای هر بخش متن
- اطلاعات پایه فونت
نمونه 2: تحلیل موقعیتی پیشرفته
PdfPig در ارائه دادههای موقعیتی دقیق برای عناصر متنی برجسته است. این نمونه نشان میدهد چگونه کلمات را با جعبههای محدودکننده آنها استخراج کنید و امکان انجام کارهایی مانند تشخیص جدول، پردازش فرم و تحلیل ناحیه محتوا را فراهم میکند.
نمونه 3: استخراج فونت و متادیتا
علاوه بر محتوای متنی، PdfPig دسترسی به متادیتای سند و اطلاعات دقیق فونت را فراهم میکند. این نمونه چگونگی استخراج ویژگیهای سند و تحلیل استفاده از فونت در سراسر PDF را نشان میدهد.
قابلیتهای پیشرفته
PdfPig از تحلیل حرفهای PDF پشتیبانی میکند:
- استخراج تصاویر: دسترسی به تصاویر جاسازی شده:
استخراج تصاویر
using var document = PdfDocument.Open("file.pdf"); foreach (var page in document.GetPages()) { foreach (var image in page.GetImages()) { var bytes = image.RawBytes; // پردازش دادههای تصویر } }
- پیمایش نشانکها: دسترسی به ساختار سند:
نشانکها
var bookmarks = document.GetBookmarks(); foreach (var bookmark in bookmarks) { Console.WriteLine($"{bookmark.Title} - صفحه {bookmark.PageNumber}"); }
- PDFهای رمزگذاری شده: مدیریت فایلهای محافظت شده با رمز:
PDF رمزگذاری شده
var options = new ParsingOptions { Password = "secure123" }; using var doc = PdfDocument.Open("encrypted.pdf", options);
مقایسه PdfPig با PdfSharp
5 تفاوت کلیدی بین PdfPig و PDFsharp:
- عملکرد اصلی: PdfPig تخصصی در خواندن/استخراج متن، موقعیتها و متادیتا. PDFsharp متمرکز بر ایجاد/ویرایش اسناد PDF
- متن در مقابل گرافیک: PdfPig متن را با دقت پیکسلی (شامل مختصات) استخراج میکند. PDFsharp برای رسم متن/اشکال (گزارشها، فاکتورها، فرمها) بهینه شده
- دسترسی به سند: PdfPig اسناد PDF موجود را تحلیل میکند، درحالیکه PDFsharp میتواند صفحات را تغییر دهد، محتوا اضافه کند و فایلها را ادغام کند
- قابلیتهای پیشرفته PdfPig جزئیات فونت، جعبههای محدودکننده و ساختار سند را نشان میدهد، درحالیکه PDFsharp از استانداردهای PDF/A، تصاویر و رمزگذاری پشتیبانی میکند
- موارد استفاده PdfPig برای دادهکاوی، پیشپردازش OCR، تحلیل محتوا مناسب است، درحالیکه PDFsharp برای تولید گزارش، دستکاری PDF، پر کردن فرمها طراحی شده
نتیجهگیری
PdfPig دسترسی بینظیری به محتوای PDF برای توسعهدهندگان .NET فراهم میکند. ایدهآل برای:
- استخراج داده: استخراج محتوا از گزارشها و اسناد
- تحلیل سند: درک ساختار و چیدمان PDF
- دسترسیپذیری: تبدیل محتوای PDF به سایر فرمتها
- پیشپردازش: آمادهسازی اسناد برای OCR یا یادگیری ماشین
با تمرکز بر استخراج دقیق محتوا و مصرف بهینه حافظه، PdfPig انتخاب اول برای تحلیل PDF در .NET است.