1. المنتجات
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for .NET

Aspose.PDF FOSS لـ .NET

إنشاء وتعديل مستندات PDF من .NET — مع التعليقات، حقول النماذج، استخراج النص، إدارة الصفحات، التشفير، واستيراد HTML/SVG/Markdown. مرخصة بموجب MIT.

مكتبة .NET مجانية مرخصة بموجب MIT لإنشاء وتعديل PDF

Aspose.PDF FOSS لـ .NET هي مكتبة مرخصة بموجب MIT لإنشاء والعمل مع مستندات PDF في C# و .NET. نقطة الدخول المركزية هي الفئة Document، التي تدعم الإنشاء من مسار ملف، مصفوفة بايت، تدفق، أو مصادر محمية بكلمة مرور، وتوفر عمليات Open، Save، Merge، Encrypt، Decrypt، وConvert عبر مواصفة PDF الكاملة.

تُظهر المكتبة 805 فئات تغطي بنية المستند عبر Document، Page، وPageCollection؛ تعليقات توضيحية غنية عبر AnnotationCollection (بما في ذلك AddTextAnnotation، AddLinkAnnotation، AddHighlightAnnotation، AddWatermarkAnnotation، وAddRedactAnnotation)؛ نماذج تفاعلية مع Form، ButtonField، CheckboxField، RadioButtonField، وChoiceField؛ استخراج النص والبحث عبر TextFragmentAbsorber وTextFragment؛ اكتشاف الجداول باستخدام AbsorbedTable، AbsorbedRow، وAbsorbedCell؛ وأمان المستند عبر Document.Encrypt وDocument.Decrypt. يدعم تحويل الصيغ HTML، SVG، واستيراد Markdown إلى جانب تصدير PDF.

قم بتثبيت Aspose.PDF FOSS لـ .NET من NuGet: dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. المكتبة مرخصة بالكامل بموجب MIT ولا توجد رسوم تشغيل أو قيود على الاستخدام. للحصول على ميزات المؤسسة والدعم، راجع Aspose.PDF for .NET — Enterprise Product.

هيكل المستند وإدارة الصفحات

  • Document API: إنشاء ملفات PDF جديدة باستخدام Document() أو فتح ملفات موجودة عبر Document.Open(path)، Document.Open(data) أو Document.Open(stream).
  • إدارة الصفحات: إضافة، الوصول، وإعادة ترتيب الصفحات عبر PageCollection. كل Page يكشف عن Width، Height، MediaBox، الدوران، وAnnotations.
  • دمج وتقسيم: اجمع ملفات متعددة باستخدام Document.Merge(documents) أو Document.MergeDocuments(files). استورد صفحات محددة باستخدام Document.ImportPage و Document.ImportPages.
  • Metadata: قراءة وكتابة بيانات تعريف المستند عبر DocumentInfo و Document.GetOrCreateMetadata().
  • التسلسل: احفظ المستندات باستخدام Document.Save(filename)، Document.Save(stream, format) أو Document.ToArray().

سيناريوهات معالجة المستندات الشائعة

  • PDF generation: إنشاء المستندات برمجيًا عن طريق إنشاء كائن Document وتعبئة الصفحات بالمحتوى.
  • تحليل المستند: افتح الملفات الموجودة لتفقد البيانات الوصفية، قياس أبعاد الصفحة، أو تعداد حقول النموذج.
  • تعديل الصفحات: تغيير الحجم، أو الدوران، أو إعادة ترتيب الصفحات باستخدام Document.ImportPage وPage API.
  • دمج دفعي: جمع أقسام التقرير أو صفحات الفاتورة في ملف PDF واحد باستخدام Document.MergeDocuments.

التعليقات وحقول النماذج

  • Rich annotation API: AnnotationCollection يوفّر طرقًا لـ text, link, highlight, underline, strikeout, square, circle, line, ink, stamp, caret, redact, watermark, polygon، و polyline annotations.
  • إجراءات الروابط: أضف روابط URI باستخدام AddLinkAnnotation(rect, uri) أو روابط القفز داخل الصفحة باستخدام AddLinkAnnotation(rect, destinationPage, destRect).
  • النماذج التفاعلية: الوصول إلى نموذج المستند عبر Document.Form لتعداد أو إنشاء مثيلات ButtonField، CheckboxField، RadioButtonField، وChoiceField.
  • اختيار التعليقات التوضيحية: تصفية التعليقات التوضيحية حسب النوع عبر الصفحات باستخدام AnnotationSelector مع تجاوزات Visit لكل نوع.
  • علامات التعليق: التحكم في الرؤية والطباعة وسلوك القفل عبر AnnotationFlags.

سيناريوهات مراجعة المستندات والتعاون

  • مراجعة العلامات: أضف تظليلًا أو تسطيرًا أو تعليقات نصية حرة لتدفقات عمل مراجعة المستندات.
  • تحرير: إزالة دائمة لمناطق المحتوى الحساسة باستخدام AddRedactAnnotation.
  • العلامة المائية: ضع نص CONFIDENTIAL أو APPROVED على الصفحات باستخدام AddWatermarkAnnotation و AddStampAnnotation.
  • النماذج التفاعلية: أنشئ مستندات قابلة للملء باستخدام أزرار الاختيار، ومربعات الاختيار، وقوائم الاختيار لخطوط أنابيب جمع البيانات.

استخراج النص والبحث

  • بحث النص: استخدم TextFragmentAbsorber لتحديد جميع مقاطع النص على صفحة أو عبر مستند، مع إمكانية مطابقة العبارة اختيارياً.
  • خصائص الجزء: كل TextFragment يكشف عن Text، Position، TextState (الخط، الحجم، اللون)، ومستطيل الحد.
  • التحكم في حالة النص: TextFragmentState يوفر الوصول إلى Font، FontSize، ForegroundColor، BackgroundColor، ووضع العرض.
  • كشف الجداول: تحديد واستخراج المحتوى الجدولي عبر AbsorbedTable، AbsorbedRow، وAbsorbedCell، كل منها يوفر Rect وTextFragments.

سيناريوهات استخراج النص والبيانات

  • فهرسة المحتوى: استخراج كل نص الصفحة لتدفقات البحث النصي الكامل.
  • استخراج بيانات النموذج: قراءة القيم المرسلة للحقول للمعالجة على جانب الخادم.
  • تحليل الفواتير: استخدم AbsorbedTable لتحليل البيانات الجدولية ذات الصفوف والأعمدة من ملفات PDF المالية.
  • مقارنة الخط الأحمر: حدد مقاطع نصية محددة للتعليق أو الاستبدال الدقيق بناءً على الموقع.

الأمان والتشفير

  • تشفير AES و RC4: تشفير المستندات باستخدام Document.Encrypt(userPassword, ownerPassword, permissions, algorithm) عبر Algorithm.AESx128، AESx256 أو RC4x128.
  • التحكم في الأذونات: تقييد الطباعة والنسخ وإمكانية الوصول عبر DocumentPrivilege.
  • إدارة كلمة المرور: تغيير كلمات مرور المستخدم والمالك باستخدام Document.ChangePasswords.
  • فك التشفير: إزالة الحماية باستخدام Document.Decrypt().
  • التوقيعات الرقمية: الوصول إلى حقول التوقيع وبيانات PKCS#7 من خلال الأنواع Signature و Algorithm.

سيناريوهات أمان المستندات

  • التوزيع السري: تشفير ملفات PDF بكلمات مرور مخصصة لكل مستلم قبل التسليم.
  • عقود الطباعة فقط: تطبيق كلمات مرور المالك مع الطباعة فقط DocumentPrivilege لمنع النسخ.
  • أرشفة الامتثال: إزالة التشفير من الأرشيفات الداخلية بعد مراجعة الأمان.
  • التحقق من التوقيع: فحص التوقيعات الرقمية المدمجة في ملفات PDF المستلمة للتحقق من الأصالة.

افتح ملف PDF، أضف توضيح ارتباط، واحفظ

افتح ملف PDF موجود، وأرفق تعليقة رابط URI إلى الصفحة 1، واحفظ النتيجة.

using Aspose.Pdf;

var data = System.IO.File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
var page = doc.Pages[1];
var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
    new Rectangle(50, 700, 200, 720), action);
using var ms = new System.IO.MemoryStream();
doc.Save(ms);
System.IO.File.WriteAllBytes("output.pdf", ms.ToArray());

أضف توضيح علامة مائية

ضع علامة مائية على الصفحة 1 من مستند موجود وقم بعملية المرور ذهابًا وإيابًا عبر التسلسل.

using Aspose.Pdf;
var input = System.IO.File.ReadAllBytes("report.pdf");
using var doc = Document.Open(input);
doc.Pages[1].Annotations.AddWatermarkAnnotation(
    new Rectangle(0, 0, 612, 792), "CONFIDENTIAL");
var saved = doc.ToArray();
System.IO.File.WriteAllBytes("watermarked.pdf", saved);

استخراج مقاطع نصية من صفحة

استخدم TextFragmentAbsorber لتعداد جميع مقاطع النص في الصفحة الأولى.

using Aspose.Pdf;
using Aspose.Pdf.Text;

var data = System.IO.File.ReadAllBytes("document.pdf");
using var doc = Document.Open(data);
var absorber = new TextFragmentAbsorber();
absorber.Visit(doc.Pages[1]);
foreach (var fragment in absorber.TextFragments)
{
    Console.WriteLine(fragment.Text);
}

الأسئلة الشائعة

ما هو نموذج الترخيص لـ Aspose.PDF FOSS لـ .NET؟

Aspose.PDF FOSS لـ .NET تم إصداره تحت رخصة MIT، مما يسمح بالاستخدام المجاني في المنتجات التجارية دون أي رسوم تشغيل. الشيفرة المصدرية متاحة للجمهور على GitHub.

كيف أقوم بتثبيت Aspose.PDF FOSS لـ .NET؟

قم بالتثبيت من NuGet باستخدام dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. تستهدف المكتبة .NET 8 وما بعده دون أي تبعيات أصلية.

ما صيغ الملفات التي يدعمها Aspose.PDF FOSS لـ .NET؟

تقرأ المكتبة وتكتب ملفات PDF وتدعم استيراد HTML وSVG وMarkdown. تصدير الرسوم النقطية متاح أيضًا — يمكن تحويل صفحات PDF إلى BMP وJPEG وPNG وTIFF.

كيف أنشئ مستند PDF جديد؟

استخدم Document.Create() لإنشاء مستند فارغ، ثم أضف صفحات واحفظ باستخدام Document.Save(stream) أو Document.ToArray().

هل يلزم مفتاح ترخيص لاستخدام Aspose.PDF FOSS لـ .NET؟

لا يلزم مفتاح ترخيص أو خطوة تفعيل. تعمل المكتبة بالكامل بدون ترخيص وبلا تكلفة تحت رخصة MIT.

  

الدعم وموارد التعلم

 العربية