Aspose.PDF FOSS for .NET היא ספרייה חינמית, ברישיון MIT ל‑.NET לקריאה, יצירה והפעלת מסמכי PDF. שוחררה תחת רישיון קוד פתוח מתיר, היא מסירה את המחסום המסורתי ליכולות PDF ברמת ארגון — כל תכונה בספרייה זמינה ללא צורך ברכישת רישיון מסחרי.

מהו Aspose.PDF FOSS עבור .NET?

הספרייה ממוקדת ב-.NET 8 ומעלה. היא מתפרסמת ב‑NuGet תחת מזהה החבילה Aspose.Pdf.Foss וניתן להוסיף אותה לכל פרויקט .NET 8+ עם פקודה אחת:

dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha

המרחב השם הראשי הוא Aspose.Pdf, עם מרחבי שם קשורים כולל Aspose.Pdf.Text, Aspose.Pdf.Forms ו‑Aspose.Pdf.Facades. הספרייה מציגה 805 מחלקות API ציבוריות הנתמכות ב‑7,488 תביעות מתועדות ו‑100 קטעי קוד שנלקחו ישירות ממערכת הבדיקות.

יכולות ליבה

ה-API מכסה את מחזור החיים המלא של מסמך PDF:

  • יצירת מסמך וטעינהDocument.Create() מייצר מסמך ריק; Document.Open(data) טוען PDF קיים ממערך בתים או זרם.
  • גישה לדפים ולתוכן — האוסף Pages מספק גישה ממוספרת מבוססת‑1 לדפים בודדים, שכל אחד מהם חושף הסברים, מפעילים, וזרמי תוכן.
  • חילוץ טקסטTextFragmentAbsorber מבקר בדף ואוסף כל קטע טקסט, עם אפשרות לסינון לפי ביטוי חיפוש ותמיכה בביטויים רגולריים.
  • פעולות אינטראקטיביותPdfAction.CreateUri, PdfAction.CreateGoTo, PdfAction.CreateJavaScript ו‑PdfAction.CreateLaunch מכסים את סוגי הפעולות הסטנדרטיים של PDF.
  • הסבריםAnnotationCollection.AddLinkAnnotation מצרף הסבר קישור עם פעולה משויכת לכל אזור מלבני בדף.
  • טפסים — המרחב השמות Aspose.Pdf.Forms ו‑Aspose.Pdf.Facades מספקים גישה לשדות AcroForm, עיצוב מראה, והרחבות JavaScript ברמת השדה.

פתיחת מסמך והוספת קישור

הדוגמה הבאה מדגימה את תבנית הסיבוב: יצירת מסמך PDF חדש, הוספת אנוטציה של קישור פעולה URI לעמוד הראשון, שמירה לזרם, וטעינה מחדש כדי לאמת שהאנוטציה נשמרת.

using var doc = Document.Create();
doc.Pages.Add();
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 MemoryStream();
doc.Save(ms);
ms.Position = 0;
using var doc2 = Document.Open(ms.ToArray());
var annot = (LinkAnnotation)doc2.Pages[1].Annotations[1];
Console.WriteLine(annot.Uri); // https://aspose.com

המתודה הסטטית Document.Open מקבלת byte[] או זרם. doc.Pages[1] ניגשת לדף הראשון באמצעות אינדקס מבוסס 1 — אותה קונבנציה של אינדקס המשמשת בכל הספרייה. לאחר שמירת הקובץ ל-MemoryStream, ניתן לטעון מחדש את המסמך וכל ההערות נשמרות.


חיפוש טקסט בדף

TextFragmentAbsorber מספק חיפוש מילות מפתח על זרם התוכן של כל דף. העבר מחרוזת חיפוש לבונה כדי להגביל תוצאות, או השתמש בגרסה ללא ארגומנטים כדי לאסוף את כל הקטעים:

using var doc = Document.Open("path/to/document.pdf");
var absorber = new TextFragmentAbsorber("Hello");
absorber.Visit(doc.Pages[1]);
foreach (var fragment in absorber.TextFragments)
{
    Console.WriteLine($"Found: {fragment.Text}");
}

כל TextFragment באוסף המתקבל חושף מאפיינים כולל Text, FontSize, ונתוני מיקום, מה שמאפשר לבנות תהליכי חיפוש, הדגשה או הסתרה על גבי הקטעים המופקים בקלות.


רישיון MIT ופיתוח פתוח

כל קוד המקור מתפרסם ב‑GitHub ומופץ תחת רישיון MIT. אין סימן מים של הערכה, אין מגבלת שימוש, ואין קובץ רישיון נפרד לניהול. המאפיין Document.IsLicensed תמיד מחזיר true בבנייה של FOSS.

החבילה נמצאת כרגע בגרסה 0.1.0-alpha, משקפת פיתוח פעיל. ממשק ה-API כבר משמעותי — 805 מחלקות, 7,488 תביעות — והסימון אלפא מצביע על כך שחתימות ה-API עשויות להשתנות לפני שחרור 1.0.


התחלה

משאבים קשורים