1. ผลิตภัณฑ์
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for .NET

Aspose.PDF FOSS for .NET

สร้างและจัดการเอกสาร PDF จาก .NET — พร้อมคำอธิบาย, ฟิลด์ฟอร์ม, การสกัดข้อความ, การจัดการหน้า, การเข้ารหัส, และการนำเข้า HTML/SVG/Markdown. มีสัญญาอนุญาตแบบ MIT.

ไลบรารี .NET ฟรีที่ใช้ใบอนุญาต MIT สำหรับการสร้างและจัดการ PDF

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 สำหรับ .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).
  • การจัดการหน้า: เพิ่ม, เข้าถึง, และจัดลำดับหน้า via 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 และ Page API.
  • Batch merging: รวมส่วนของรายงานหรือหน้าบิลเป็น PDF ไฟล์เดียวโดยใช้ Document.MergeDocuments.

คำอธิบายและฟิลด์ฟอร์ม

  • Rich annotation API: AnnotationCollection เปิดเผยเมธอดสำหรับการทำเครื่องหมายข้อความ, ลิงก์, ไฮไลท์, ขีดเส้นใต้, ขีดทับ, สี่เหลี่ยม, วงกลม, เส้น, หมึก, แสตมป์, เคอร์ท, การลบข้อมูล, ลายน้ำ, รูปหลายเหลี่ยม, และรูปหลายเส้น.
  • Link actions: เพิ่มลิงก์ URI ด้วย AddLinkAnnotation(rect, uri) หรือ ลิงก์กระโดดภายในหน้า ด้วย AddLinkAnnotation(rect, destinationPage, destRect).
  • แบบฟอร์มโต้ตอบ: เข้าถึงแบบฟอร์มเอกสารผ่าน Document.Form เพื่อทำการนับหรือสร้าง ButtonField, CheckboxField, RadioButtonField และ ChoiceField อินสแตนซ์.
  • การเลือกคำอธิบาย: กรองคำอธิบายตามประเภทข้ามหน้าโดยใช้ AnnotationSelector พร้อมการโอเวอร์โหลด Visit ต่อประเภท.
  • Annotation flags: ควบคุมการมองเห็น, การพิมพ์, และพฤติกรรมการล็อก ผ่าน AnnotationFlags

สถานการณ์การตรวจสอบเอกสารและการทำงานร่วมกัน

  • การตรวจสอบมาร์กอัป: เพิ่มไฮไลท์, ขีดเส้นใต้ หรือคำอธิบายข้อความอิสระสำหรับกระบวนการตรวจสอบเอกสาร
  • Redaction: ลบส่วนเนื้อหาที่ละเอียดอ่อนอย่างถาวรโดยใช้ AddRedactAnnotation
  • Watermarking: ตราประทับข้อความ CONFIDENTIAL หรือ APPROVED ลงบนหน้าโดยใช้ AddWatermarkAnnotation และ AddStampAnnotation.
  • แบบฟอร์มโต้ตอบ: สร้างเอกสารที่สามารถกรอกได้ด้วยปุ่มวิทยุ, กล่องกาเครื่องหมาย, และรายการตัวเลือกสำหรับกระบวนการจับข้อมูล.

การสกัดข้อความและการค้นหา

  • การค้นหาข้อความ: ใช้ TextFragmentAbsorber เพื่อค้นหาชิ้นส่วนข้อความทั้งหมดในหน้าเดียวหรือทั่วทั้งเอกสาร พร้อมการจับคู่วลีแบบเลือกได้.
  • คุณสมบัติของส่วน: แต่ละ TextFragment เปิดเผย Text, Position, TextState (แบบอักษร, ขนาด, สี), และสี่เหลี่ยมขอบเขต.
  • การควบคุมสถานะข้อความ: TextFragmentState ให้การเข้าถึง Font, FontSize, ForegroundColor, BackgroundColor, และโหมดการเรนเดอร์.
  • การตรวจจับตาราง: ระบุและดึงเนื้อหาตารางผ่าน AbsorbedTable, AbsorbedRow และ AbsorbedCell, แต่ละรายการให้ Rect และ TextFragments.

สถานการณ์การสกัดข้อความและข้อมูล

  • การทำดัชนีเนื้อหา: ดึงข้อความทั้งหมดของหน้าเพื่อใช้ในกระบวนการค้นหาแบบเต็มข้อความ.
  • การสกัดข้อมูลฟอร์ม: อ่านค่าฟิลด์ที่ส่งมาเพื่อการประมวลผลด้านเซิร์ฟเวอร์.
  • การแยกใบแจ้งหนี้: Use AbsorbedTable เพื่อแยกข้อมูลตารางแบบแถวและคอลัมน์จากไฟล์ PDF ทางการเงิน.
  • Redline comparison: ค้นหาส่วนข้อความเฉพาะเพื่อทำการอธิบายหรือแทนที่โดยอิงตำแหน่งที่แม่นยำ.

ความปลอดภัยและการเข้ารหัส

  • การเข้ารหัส 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 for .NET รองรับ?

ไลบรารีนี้อ่านและเขียน PDF และรองรับการนำเข้า HTML, SVG, และ Markdown. การส่งออกแบบแรสเตอร์ก็พร้อมใช้งาน — หน้า PDF สามารถเรนเดอร์เป็น BMP, JPEG, PNG, และ TIFF.

ฉันจะสร้างเอกสาร PDF ใหม่ได้อย่างไร?

ใช้ Document.Create() เพื่อสร้างเอกสารเปล่า, จากนั้นเพิ่มหน้าและบันทึกด้วย Document.Save(stream) หรือ Document.ToArray().

จำเป็นต้องใช้คีย์ใบอนุญาตเพื่อใช้ Aspose.PDF FOSS for .NET หรือไม่?

ไม่ต้องใช้คีย์ใบอนุญาตหรือขั้นตอนการเปิดใช้งาน. ไลบรารีทำงานโดยไม่มีใบอนุญาตและไม่มีค่าใช้จ่ายใด ๆ ภายใต้ใบอนุญาต MIT.

  

ทรัพยากรสนับสนุนและการเรียนรู้

 ภาษาไทย