Fasad API
Facades API
API Facades menyediakan pembungkus yang dipermudahkan, berorientasikan tugas di sekitar model objek teras Aspose.PDF FOSS untuk .NET. Setiap kelas facade menyasarkan operasi PDF tertentu — pengisian borang, penyambungan fail, penyuntingan kandungan, atau penandatanganan digital — dan mendedahkan aliran kerja BindPdf / Save.
Pengisian borang dengan fasad Form
Form (dalam Aspose.Pdf.Facades) mengikat kepada PDF sedia ada dan membolehkan anda membaca atau menulis nilai medan AcroForm tanpa menavigasi pokok halaman.
using var form = new Form("input.pdf", "output.pdf");
form.FillField("FirstName", "Alice");
form.FillField("AcceptTerms", "Yes");
form.Save();Untuk membaca nilai medan:
using var form = new Form("input.pdf");
string name = form.GetField("FirstName");Menggabungkan dan memisahkan PDF dengan PdfFileEditor
PdfFileEditor menggabungkan, memisahkan, mengekstrak, dan memadam julat halaman.
var editor = new PdfFileEditor();
// Concatenate two files
editor.Concatenate("file1.pdf", "file2.pdf", "merged.pdf");
// Extract pages 2-5
editor.Extract("source.pdf", 2, 5, "pages2to5.pdf");
// Split at page 3
editor.SplitFromFirst("source.pdf", 3, "first3.pdf");Menyunting kandungan halaman dengan PdfContentEditor
PdfContentEditor mengubah kandungan halaman sedia ada — menambah teks, menggantikan teks, atau melampirkan tindakan kepada anotasi.
var editor = new PdfContentEditor();
editor.BindPdf("input.pdf");
// Perform content edits
editor.Save("output.pdf");Tandatangan digital dengan PdfFileSignature
PdfFileSignature menandatangani dokumen PDF dan mengesahkan tandatangan sedia ada.
var sig = new PdfFileSignature();
sig.BindPdf("document.pdf");
// Sign or verify
sig.Save("signed.pdf");Pensteman halaman dengan PdfFileStamp
PdfFileStamp menindih teks, imej, atau halaman PDF lain sebagai setem.
var stamp = new PdfFileStamp();
stamp.BindPdf("input.pdf");
// Add stamps
stamp.Save("stamped.pdf");
stamp.Close();Menukar halaman kepada imej dengan PdfConverter
PdfConverter memaparkan halaman PDF ke format imej raster.
var converter = new PdfConverter();
converter.BindPdf("input.pdf");
converter.DoConvert();
// Iterate pages and save imagesPetua dan Amalan Terbaik
- Sentiasa panggil
Close()atau gunakanusinguntuk melepaskan sumber yang dipegang oleh objek facade. - Gunakan
BindPdfdengan laluan fail untuk fail besar bagi mengelakkan memuatkan semuanya ke dalam memori sekaligus. - Lebih suka
TryConcatenatedanTryAppendberbanding versi bukan‑Try mereka untuk pengendalian ralat yang lebih baik. - Facade mendelegasikan kepada model teras
Documentsecara dalaman — beralih ke API teras apabila anda memerlukan kawalan terperinci. - Facade
FormEditormembenarkan penambahan medan borang baru ke PDF sedia ada, bukan sekadar mengisi medan yang sudah ada.
Isu Umum
| Issue | Cause | Fix |
|---|---|---|
Save() menghasilkan fail kosong | BindPdf tidak dipanggil sebelum simpan | Sentiasa ikat PDF sumber sebelum memanggil Save |
| Nilai medan borang tidak ditulis | Nama medan tidak sepadan dengan nama medan dalaman PDF | Gunakan Form.FieldNames untuk menyenaraikan nama medan yang tersedia |
| Penggabungan gagal secara senyap | Fail input disulitkan atau rosak | Gunakan TryConcatenate dan semak nilai kembali |
| Tandatangan tidak sah selepas penyuntingan | Kandungan diubah selepas penandatanganan | Tandatangani dokumen sebagai langkah terakhir |
Soalan Lazim
Apakah perbezaan antara Facades dan core Document API?
Facade menyediakan kaedah peringkat tinggi, berorientasikan tugas (mengisi borang, menggabungkan fail).
API teras (Document, Page, Annotation) memberikan akses peringkat rendah kepada
setiap objek PDF. Facade menggunakan API teras secara dalaman.
Bolehkah saya menyambung beberapa operasi facade?
Ya. Ikat sumber yang sama, lakukan operasi, dan simpan sekali. Atau simpan hasil antara dan ikat semula untuk operasi seterusnya.
Adakah PdfFileEditor menyokong PDF yang dilindungi kata laluan?
Ya. Overload yang menerima kata laluan pemilik/pengguna tersedia untuk fail yang disulitkan.
Ringkasan Rujukan API
| Class / Method | Description |
|---|---|
Form | Fasad AcroForm untuk membaca dan menulis nilai medan |
Form.FillField | Tetapkan nilai medan borang mengikut nama |
Form.GetField | Baca nilai medan borang mengikut nama |
FormEditor | Tambah atau ubah medan borang dalam PDF sedia ada |
PdfFileEditor | Gabungkan, pisahkan, ekstrak, dan hapus julat halaman PDF |
PdfFileEditor.Concatenate | Gabungkan dua atau lebih PDF menjadi satu |
PdfFileEditor.Extract | Ekstrak julat halaman ke PDF baru |
PdfContentEditor | Ubah kandungan halaman (teks, anotasi, tindakan) |
PdfFileSignature | Tandatangan dan sahkan tandatangan digital PDF |
PdfFileStamp | Lapiskan teks atau cap imej pada halaman |
PdfConverter | Render halaman PDF ke imej raster |
FormattedText | Penerangan teks bergaya untuk operasi cap |
FontStyle | Enumerasi gaya fon (tebal, condong, dll.) |
EncodingType | Enumerasi pengekodan aksara |