Aspose.PDF FOSS for .NET adalah perpustakaan .NET gratis dengan lisensi MIT untuk membaca, membuat, dan memanipulasi dokumen PDF. Dirilis di bawah lisensi sumber terbuka yang permisif, ini menghilangkan hambatan tradisional untuk kemampuan PDF tingkat perusahaan — setiap fitur dalam perpustakaan tersedia tanpa membeli lisensi komersial.

Apa Itu Aspose.PDF FOSS untuk .NET?

Perpustakaan menargetkan .NET 8 dan yang lebih baru. Itu dipublikasikan ke NuGet dengan ID paket Aspose.Pdf.Foss dan dapat ditambahkan ke proyek .NET 8+ apa pun dengan satu perintah:

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

Namespace utama adalah Aspose.Pdf, dengan namespace terkait termasuk Aspose.Pdf.Text, Aspose.Pdf.Forms, dan Aspose.Pdf.Facades. Perpustakaan ini mengekspos 805 kelas API publik yang didukung oleh 7,488 klaim yang didokumentasikan dan 100 potongan kode yang diambil langsung dari suite pengujian.

Kemampuan Inti

API mencakup seluruh siklus hidup dokumen PDF:

  • Pembuatan dan pemuatan DokumenDocument.Create() menghasilkan dokumen kosong; Document.Open(data) memuat PDF yang ada dari array byte atau aliran.
  • Akses halaman dan konten — koleksi Pages menyediakan akses berindeks berbasis 1 ke halaman individual, masing‑masing menampilkan anotasi, operator, dan aliran konten.
  • Ekstraksi teksTextFragmentAbsorber mengunjungi sebuah halaman dan mengumpulkan setiap fragmen teks, dengan penyaringan frasa pencarian opsional dan dukungan ekspresi reguler.
  • Tindakan interaktifPdfAction.CreateUri, PdfAction.CreateGoTo, PdfAction.CreateJavaScript, dan PdfAction.CreateLaunch mencakup tipe tindakan PDF standar.
  • AnotasiAnnotationCollection.AddLinkAnnotation menempelkan anotasi tautan dengan tindakan terkait ke wilayah persegi panjang mana pun pada halaman.
  • Formulir — namespace Aspose.Pdf.Forms dan Aspose.Pdf.Facades menyediakan akses ke bidang AcroForm, pemformatan tampilan, dan ekstensi JavaScript tingkat bidang.

Membuka Dokumen dan Menambahkan Tautan

Contoh berikut menunjukkan pola round-trip: buat dokumen PDF baru, tambahkan anotasi tautan aksi URI ke halaman pertama, simpan ke aliran, dan muat ulang untuk memverifikasi anotasi tetap ada.

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

Metode statis Document.Open menerima sebuah byte[] atau sebuah stream. doc.Pages[1] mengakses halaman pertama dengan indeks berbasis 1 — konvensi indeks yang sama digunakan di seluruh perpustakaan. Setelah disimpan ke MemoryStream, dokumen dapat dimuat kembali dan semua anotasi dipertahankan.


Mencari Teks pada Halaman

TextFragmentAbsorber menyediakan pencarian kata kunci pada aliran konten dari halaman mana pun. Berikan frasa pencarian ke konstruktor untuk membatasi hasil, atau gunakan overload tanpa argumen untuk mengumpulkan semua fragmen:

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}");
}

Setiap TextFragment dalam koleksi yang dihasilkan mengekspos properti termasuk Text, FontSize, dan data posisi, sehingga mudah membangun alur kerja pencarian, penyorotan, atau redaksi di atas fragmen yang diekstrak.


Lisensi MIT dan Pengembangan Terbuka

Semua kode sumber dipublikasikan di GitHub dan didistribusikan di bawah Lisensi MIT. Tidak ada watermark evaluasi, tidak ada batas penggunaan, dan tidak ada file lisensi terpisah untuk dikelola. Properti Document.IsLicensed selalu mengembalikan true dalam build FOSS.

Paket saat ini berada pada versi 0.1.0-alpha, mencerminkan pengembangan aktif. Permukaan API sudah cukup besar — 805 kelas, 7.488 klaim — dan penunjukan alpha menandakan bahwa tanda tangan API dapat berubah sebelum rilis 1.0.


Memulai

Sumber Daya Terkait