Aspose.PDF FOSS for .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 for .NET จาก NuGet: dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. ไลบรารีนี้ใช้ใบอนุญาต MIT อย่างเต็มรูปแบบโดยไม่มีค่าธรรมเนียมการรันไทม์หรือข้อจำกัดการใช้งาน สำหรับคุณลักษณะและการสนับสนุนระดับองค์กร ดูที่ Aspose.PDF for .NET — Enterprise Product.
Document() or open existing files via Document.Open(path), Document.Open(data), or Document.Open(stream).PageCollection. Each Page exposes Width, Height, MediaBox, rotation, and Annotations.Document.Merge(documents) or Document.MergeDocuments(files). Import specific pages with Document.ImportPage and Document.ImportPages.DocumentInfo and Document.GetOrCreateMetadata().Document.Save(filename), Document.Save(stream, format), or Document.ToArray().Document instance and populating pages with content.Document.ImportPage and the Page API.Document.MergeDocuments.AnnotationCollection exposes methods for text, link, highlight, underline, strikeout, square, circle, line, ink, stamp, caret, redact, watermark, polygon, and polyline annotations.AddLinkAnnotation(rect, uri) or internal page-jump links with AddLinkAnnotation(rect, destinationPage, destRect).Document.Form to enumerate or create ButtonField, CheckboxField, RadioButtonField, and ChoiceField instances.AnnotationSelector with per-type Visit overloads.AnnotationFlags.AddRedactAnnotation.AddWatermarkAnnotation and AddStampAnnotation.TextFragmentAbsorber to locate all text fragments on a page or across a document, with optional phrase matching.TextFragment exposes Text, Position, TextState (font, size, colour), and bounding rectangle.TextFragmentState provides access to Font, FontSize, ForegroundColor, BackgroundColor, and rendering mode.AbsorbedTable, AbsorbedRow, and AbsorbedCell, each providing Rect and TextFragments.AbsorbedTable to parse tabular row-and-column data from financial PDFs.Document.Encrypt(userPassword, ownerPassword, permissions, algorithm) using Algorithm.AESx128, AESx256, or RC4x128.DocumentPrivilege.Document.ChangePasswords.Document.Decrypt().Signature and Algorithm types.DocumentPrivilege to prevent copying.Open an existing PDF, attach a URI link annotation to page 1, and persist the result.
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());
Stamp a watermark onto page 1 of an existing document and round-trip through serialization.
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);
Use TextFragmentAbsorber to enumerate all text fragments on the first page.
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 for .NET is released under the MIT License, allowing free use in commercial products with no runtime fees. The source code is publicly available on GitHub.
Install from NuGet using dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. The library targets .NET 8 and later with no native dependencies.
The library reads and writes PDF and supports import of HTML, SVG, and Markdown. Raster export is also available — PDF pages can be rendered to BMP, JPEG, PNG, and TIFF.
Use Document.Create() to produce an empty document, then add pages and save with Document.Save(stream) or Document.ToArray().
No license key or activation step is required. The library runs fully unlicensed at no cost under the MIT License.