العمل مع الصور في PDF C#

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

C# API لإضافة وإزالة واستبدال الصور في PDF - تنزيل مجاني

Aspose.PDF for .NET هي مكتبة من فئة C# تتيح لك إنشاء مستندات PDF ومعالجتها من داخل تطبيقات .NET. باستخدام API ، يمكنك أداء ميزات أتمتة PDF الأساسية والمتقدمة بسهولة تامة. بالإضافة إلى ذلك ، يمكنك معالجة الصور في ملفات PDF الموجودة. يمكن تنزيل واجهة برمجة التطبيقات كـ DLL أو تثبيتها عبر NuGet.

PM> Install-Package Aspose.Pdf

أضف صورة في ملف PDF في C# .NET

فيما يلي خطوات إضافة صورة إلى ملف PDF باستخدام Aspose.PDF for .NET.

  • استخدم فئة Document لإنشاء ملف PDF جديد أو تحميل ملف PDF موجود.
  • احصل على مرجع الصفحة المطلوبة في كائن صفحة.
  • أضف الصورة إلى مجموعة الموارد من الصفحة.
  • استخدم عوامل التشغيل التالية لوضع الصورة على الصفحة:
    • GSave operator to save the current graphical state.
    • ConcatenateMatrix operator to specify where the image is to be placed.
    • يفعل operator to draw the image on the page.
    • GRestore operator to save the updated graphical state.
  • احفظ ملف PDF المحدث باستخدام طريقة Document.Save(String).

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

// للحصول على أمثلة وملفات بيانات كاملة ، يرجى الانتقال إلى https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// افتح المستند
Document pdfDocument = new Document("AddImage.pdf");

// ضبط الإحداثيات
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// احصل على الصفحة حيث يجب إضافة الصورة
Page page = pdfDocument.Pages[1];

// تحميل الصورة في تيار
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);

// أضف صورة إلى مجموعة الصور لمصادر الصفحة
page.Resources.Images.Add(imageStream);

// باستخدام عامل تشغيل GSave: يحفظ هذا المشغل حالة الرسومات الحالية
page.Contents.Add(new Aspose.Pdf.Operators.GSave());

// إنشاء كائنات مستطيل ومصفوفة
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });

// باستخدام عامل ConcatenateMatrix (مصفوفة متسلسلة): يحدد كيفية وضع الصورة
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];

// باستخدام عامل التشغيل: يقوم هذا العامل برسم الصورة
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));

// باستخدام عامل GRestore: يستعيد هذا المشغل حالة الرسومات
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());

// احفظ المستند المحدث
pdfDocument.Save("AddImage_out.pdf");

استخراج الصور من PDF في C#

في حالة رغبتك في استخراج جميع الصور من ملف PDF ، يمكنك القيام بذلك باتباع الخطوات التالية.

  • استخدم فئة مستند لتحميل ملف PDF موجود.
  • احصل على الصورة المطلوبة في كائن XImage من مجموعة الموارد لصفحة معينة باستخدام الفهرس.
  • احفظ الصورة المستخرجة بالتنسيق المطلوب باستخدام طريقة XImage.Save (FileStream، ImageFormat).

يوضح نموذج التعليمات البرمجية التالي كيفية استخراج الصور من PDF باستخدام C#.

// للحصول على أمثلة وملفات بيانات كاملة ، يرجى الانتقال إلى https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// افتح المستند
Document pdfDocument = new Document("ExtractImages.pdf");

// استخراج صورة معينة
XImage xImage = pdfDocument.Pages[1].Resources.Images[1];

FileStream outputImage = new FileStream("output.jpg", FileMode.Create);

// حفظ الصورة الناتجة
xImage.Save(outputImage, ImageFormat.Jpeg);
outputImage.Close();

إزالة الصور من PDF في C#

بمجرد وصولك إلى موارد الصفحة في ملف PDF ، يمكنك إزالة الصور منها. فيما يلي خطوات إزالة الصور من ملف PDF باستخدام C#.

يوضح نموذج التعليمات البرمجية التالي كيفية إزالة الصور من ملف PDF باستخدام C#.

// للحصول على أمثلة وملفات بيانات كاملة ، يرجى الانتقال إلى https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// افتح المستند
Document pdfDocument = new Document("DeleteImages.pdf");

// حذف صورة معينة
pdfDocument.Pages[1].Resources.Images.Delete(1);

// احفظ ملف PDF المحدث
pdfDocument.Save("output.pdf");

استبدال الصورة في PDF في C#

يتيح لك Aspose.PDF for .NET أيضًا استبدال صورة معينة في ملف PDF. لهذا ، يمكنك استبدال الصورة في مجموعة الصور بالصفحة. فيما يلي خطوات استبدال صورة في PDF باستخدام C#.

  • قم بتحميل ملف PDF باستخدام فئة مستند.
  • استبدل الصورة المطلوبة باستخدام طريقة [Document.Pages 1 .Resources.Images.Replace (Int32، Stream، Int32، Boolean)]24.
  • احفظ ملف PDF المحدث باستخدام طريقة Document.Save(String).

يوضح نموذج التعليمات البرمجية التالي كيفية استبدال صورة في PDF باستخدام C#.

// للحصول على أمثلة وملفات بيانات كاملة ، يرجى الانتقال إلى https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// افتح المستند
Document pdfDocument = new Document("input.pdf");

// استبدل صورة معينة
pdfDocument.Pages[1].Resources.Images.Replace(1, new FileStream("lovely.jpg", FileMode.Open));

// احفظ ملف PDF المحدث
pdfDocument.Save("output.pdf");

C# .NET PDF API - احصل على ترخيص مجاني

يمكنك الحصول على ترخيص مؤقت مجاني لتجربة واجهة برمجة التطبيقات بدون قيود تقييمية.

استنتاج

الصور والأشياء الرسومية هي عناصر مهمة في مستندات PDF. لذلك ، في هذه المقالة ، قمنا بتغطية كيفية معالجة الصور في ملف PDF باستخدام C# .NET API. أظهر البرنامج التعليمي خطوة بخطوة وعينات التعليمات البرمجية كيفية إضافة الصور واستخراجها وإزالتها واستبدالها في ملفات PDF في C#. يمكنك استكشاف المزيد حول واجهة برمجة تطبيقات C# PDF باستخدام التوثيق.

أنظر أيضا