1. محصولات
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for .NET

Aspose.PDF FOSS - Aspose.PDF نرم‌افزار آزاد برای .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-licensed است و هیچ هزینه‌ای در زمان اجرا یا محدودیتی در استفاده ندارد. برای ویژگی‌ها و پشتیبانی سازمانی، به 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() بخوانید و بنویسید.
  • Serialization: اسناد را با Document.Save(filename)، Document.Save(stream, format) یا Document.ToArray() حفظ کنید.

سناریوهای رایج پردازش اسناد

  • PDF generation: اسناد را به‌صورت برنامه‌نویسی ایجاد کنید با ایجاد یک نمونه Document و پر کردن صفحات با محتوا.
  • تحلیل سند: فایل‌های موجود را برای بازرسی متادیتا، اندازه‌گیری ابعاد صفحه یا شمارش فیلدهای فرم باز کنید.
  • دستکاری صفحات: تغییر اندازه، چرخش یا ترتیب مجدد صفحات با استفاده از Document.ImportPage و API Page.
  • ادغام دسته‌ای: بخش‌های گزارش یا صفحات فاکتور را با استفاده از Document.MergeDocuments در یک PDF واحد ترکیب کنید.

حاشیه‌نویسی و فیلدهای فرم

  • Rich annotation API: AnnotationCollection متدهایی را برای حاشیه‌نویسی‌های text، link، highlight، underline، strikeout، square، circle، line، ink، stamp، caret، redact، watermark، polygon و polyline فراهم می‌کند.
  • اقدامات لینک: لینک‌های 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 (قلم، اندازه، رنگ)، و مستطیل محدوده.
  • Text state control: TextFragmentState دسترسی به Font، FontSize، ForegroundColor، BackgroundColor و حالت رندرینگ را فراهم می‌کند.
  • تشخیص جدول: شناسایی و استخراج محتوای جدولی از طریق AbsorbedTable، AbsorbedRow و AbsorbedCell، که هر کدام Rect و TextFragments را فراهم می‌کنند.

سناریوهای استخراج متن و داده

  • فهرست‌گذاری محتوا: استخراج تمام متن صفحه برای خطوط لوله جستجوی تمام‌متن.
  • استخراج داده‌های فرم: مقادیر فیلدهای ارسال‌شده را برای پردازش سمت سرور بخوانید.
  • تحلیل فاکتور: از AbsorbedTable برای تجزیه داده‌های جدولی سطر و ستون از PDFهای مالی استفاده کنید.
  • Redline comparison: متن‌های خاص را برای حاشیه‌نویسی یا جایگزینی دقیق مبتنی بر موقعیت پیدا کنید.

امنیت و رمزنگاری

  • AES and RC4 encryption: اسناد را با 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());

حاشیه‌نویسی Watermark اضافه کنید

یک واترمارک را بر روی صفحه 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 اجرا می‌شود.

  

منابع پشتیبانی و آموزش

 فارسی