PDFsharp

 
 

Open Source .NET API لمعالجة PDF

إنشاء مستندات PDF ومعالجتها وتحويلها ومعالجتها عبر مكتبة Free C # .NET.

ما هو PDFsharp؟

مكتبة Open Source .NET التي يمكن استخدامها لإنشاء وعرض ودمج وتقسيم وتعديل وطباعة واستخراج النص أو البيانات الوصفية لملفات PDF. تدعم واجهة برمجة تطبيقات PDFsharp إنشاء مستندات PDF على الفور من أي لغة من لغات .NET. كما يدعم استيراد البيانات من مصادر مختلفة عبر ملفات XML أو واجهات مباشرة. وهو يدعم العديد من الخيارات لتخطيط الصفحة وتنسيق النص وتصميم المستندات.

يوفر PDFsharp تنفيذًا رسوميًا يعتمد إما على GDI + أو WPF. تسهل واجهة برمجة التطبيقات مهمة المطور من خلال توفير ميزات لاستخدام رمز مصدر واحد للرسم على صفحة PDF وكذلك في نافذة أو على الطابعة. وهو يدعم العديد من الميزات المهمة لمعالجة ملفات PDF مثل تعديل ملفات PDF ودمجها أو تقسيمها وتحويل XPS إلى PDF وتقديم PDF واستخراج بيانات PDF وتضمين الخط وتقسيمه ودعم Unicode وغير ذلك الكثير.

Previous Next

الشروع في العمل مع PDFsharp

PDFsharp هو برنامج مرخص مزدوج كبرنامج AGPL / تجاري. AGPL هو ترخيص برنامج مجاني / مفتوح المصدر.

يوصى بشدة باستخدام NuGet لإضافة PDFsharp إلى مشروعك ،

الأمر NuGet

 Install-Package PdfSharp

باستخدام Visual Studio ، يمكنك تثبيت NuGet Package Manager للوصول بسهولة إلى حزم NuGet. إنه يعمل مع VS 2012 Express وكذلك مع إصدارات المجتمع من VS 2013 و VS 2015. في Visual Studio ، انتقل إلى "Tools" = & gt؛ "الامتدادات والتحديثات ..." لتثبيت NuGet Package Manager إذا لم يكن لديك بعد. سيقوم NuGet Package Manager بتنزيل الحزمة نيابة عنك وتثبيتها وإضافة مرجع إلى مشروعك.

إنشاء وتعديل مستندات PDF عبر Free .NET API

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

  1. تهيئة PdfDocument
  2. إضافة صفحة
  3. احصل على كائن XGraphics للرسم
  4. قم بإنشاء خط
  5. أضف نصًا
  6. حفظ المستند

إنشاء ملف PDF باستخدام C #

// Create a new PDF document
PdfDocument pdfDocument = new PdfDocument();
// Create an empty page
PdfPage pdfPage = pdfDocument.AddPage();
// Get an XGraphics object for drawing
XGraphics xGraphics = XGraphics.FromPdfPage(pdfPage);
// Create a font
XFont xFont = new XFont("Verdana", 20, XFontStyle.BoldItalic);
// Draw the text
xGraphics.DrawString("File Format Developer Guide", xFont, XBrushes.Black,
    new XRect(0, 0, pdfPage.Width, pdfPage.Height),
    XStringFormats.Center);
// Save the document...
pdfDocument.Save("fileformat.pdf");
    

إنشاء تعليقات توضيحية بتنسيق PDF عبر .NET API

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

قم بإنشاء تعليق توضيحي نصي بتنسيق PDF عبر C #

 // Create a PDF text annotation
PdfTextAnnotation textAnnot = new PdfTextAnnotation();
textAnnot.Title = "This is the title";
textAnnot.Subject = "This is the subject";
textAnnot.Contents = "This is the contents of the annotation.\rThis is the 2nd line.";
textAnnot.Icon = PdfTextAnnotationIcon.Note;
gfx.DrawString("The first text annotation", font, XBrushes.Black, 30, 50, XStringFormats.Default);
// Convert rectangle from world space to page space. This is necessary because the annotation is
// placed relative to the bottom left corner of the page with units measured in point.
XRect rect = gfx.Transformer.WorldToDefaultPage(new XRect(new XPoint(30, 60), new XSize(30, 30)));
textAnnot.Rectangle = new PdfRectangle(rect);
// Add the annotation to the page
page.Annotations.Add(textAnnot);

ادمج مستندات PDF متعددة عبر .NET

هل لديك العديد من مستندات PDF التي تحتاج إلى دمجها في مستند واحد كبير؟ توفر لك PDFsharp API وظائف لدمج ملفات PDF متعددة في ملف واحد ببضعة أسطر من التعليمات البرمجية. يمكن للمطورين إنشاء مستند جديد بسهولة من ملفات PDF الموجودة. قد يكون هذا مفيدًا للمقارنة المرئية أو العديد من المهام المهمة الأخرى.

ادمج المستندات عبر Java

 // Open the input files
PdfDocument inputDocument1 = PdfReader.Open(filename1, PdfDocumentOpenMode.Import);
PdfDocument inputDocument2 = PdfReader.Open(filename2, PdfDocumentOpenMode.Import);
// Create the output document
PdfDocument outputDocument = new PdfDocument();
// Show consecutive pages facing. Requires Acrobat 5 or higher.
outputDocument.PageLayout = PdfPageLayout.TwoColumnLeft;
XFont font = new XFont("Verdana", 10, XFontStyle.Bold);
XStringFormat format = new XStringFormat();
format.Alignment = XStringAlignment.Center;
format.LineAlignment = XLineAlignment.Far;
XGraphics gfx;
XRect box;
int count = Math.Max(inputDocument1.PageCount, inputDocument2.PageCount);
for (int idx = 0; idx < count; idx++)
{
// Get page from 1st document
PdfPage page1 = inputDocument1.PageCount > idx ?
inputDocument1.Pages[idx] : new PdfPage();
// Get page from 2nd document
PdfPage page2 = inputDocument2.PageCount > idx ?
inputDocument2.Pages[idx] : new PdfPage();
// Add both pages to the output document
page1 = outputDocument.AddPage(page1);
page2 = outputDocument.AddPage(page2);
// Write document file name and page number on each page
gfx = XGraphics.FromPdfPage(page1);
box = page1.MediaBox.ToXRect();
box.Inflate(0, -10);
gfx.DrawString(String.Format("{0} • {1}", filename1, idx + 1),
font, XBrushes.Red, box, format);
gfx = XGraphics.FromPdfPage(page2);
box = page2.MediaBox.ToXRect();
box.Inflate(0, -10);
gfx.DrawString(String.Format("{0} • {1}", filename2, idx + 1),
font, XBrushes.Red, box, format);
}
// Save the document...
const string filename = "CompareDocument1_tempfile.pdf";
outputDocument.Save(filename);
 عربي