تعد قراءة أنواع مختلفة من المستندات برمجيًا ممارسة شائعة هذه الأيام. في دليل الكيفية هذا ، ستتعرف على كيفية قراءة ملف PDF في C# باتباع الخطوات البسيطة التالية.
خطوات قراءة ملف PDF في C#
- قم بإنشاء تطبيق C# Console فارغ في Visual Studio
- أضف مرجعًا إلى Aspose.PDF for .NET بتثبيته من NuGet.org
- قم بتحميل ملف PDF موجود في كائن المستند
- قم بتهيئة الفصل الدراسي TextAbsorber لقراءة ملف PDF
- استخراج نص PDF وكتابته في إخراج وحدة التحكم
- كرر من خلال صفحة PDF Resources للعثور على الصور
- قم بإنشاء كائن FileStream بالصورة التي تم العثور عليها
- احفظ الصورة على القرص المحلي
يوضح مقتطف الشفرة أدناه كيفية فتح ملف PDF وقراءته في C#. ستتمكن من قراءة النص واستخراج الصور من ملف PDF باستخدامه. تقدم API فئة TextAbsorber التي تُستخدم لقراءة النص من ملف PDF ويمكنك تحقيق النتائج المستخرجة عبر كائن Text. يمكن أيضًا العثور على الصور وحفظها على القرص المحلي من خلال تكرار موارد صفحة PDF كما هو موضح أدناه.
كود لقراءة ملف PDF في C#
using System; | |
using System.IO; | |
// Add reference to Aspose.PDF for .NET API | |
// Use following namespace to read PDF file | |
using Aspose.Pdf; | |
namespace ReadPDFFiles | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Set license before reading PDF file | |
Aspose.Pdf.License AsposePDFLicense = new Aspose.Pdf.License(); | |
AsposePDFLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
string inFile = @"c:\ReadPDFFileInCSharp.pdf"; | |
// Load an existing PDF file in Document object to read | |
Document pdf = new Document(inFile); | |
// 1. Read text from PDF file | |
// Initialize TextAbsorber Class to read Text from PDF file | |
Aspose.Pdf.Text.TextAbsorber textAbsorber = new Aspose.Pdf.Text.TextAbsorber(); | |
// Call Page.Accept() method to let TextAbsorber find text in PDF Pages | |
pdf.Pages.Accept(textAbsorber); | |
// Write the extracted text to Console output | |
Console.WriteLine(textAbsorber.Text); | |
// 2. Extract images from PDF file | |
int imageIndex = 1; | |
// Iterate through PDF pages | |
foreach (var pdfPage in pdf.Pages) | |
{ | |
// Check available images while reading the PDF | |
foreach (XImage image in pdfPage.Resources.Images) | |
{ | |
// Create file stream for found image | |
FileStream extractedImage = new FileStream(String.Format("Page{0}_Image{1}.jpg", pdfPage.Number, imageIndex), FileMode.Create); | |
// Save output image to the disk | |
image.Save(extractedImage, System.Drawing.Imaging.ImageFormat.Jpeg); | |
// Close stream | |
extractedImage.Close(); | |
imageIndex++; | |
} | |
// Reset image index | |
imageIndex = 1; | |
} | |
} | |
} | |
} |
في الموضوع السابق ، تعلمت كيفية معالجة ملفات PDF الكبيرة في C#. سيمكنك مثال المعلومات والكود أعلاه من فتح ملفات PDF وقراءتها في C# لاستخراج النص والصور.