v26.8
Kelas SignOptions telah dirancang ulang
- Sekarang lebih mudah digunakan.
- Mewarisi dari kelas OptionsWithInputAndOutput.
- Properti Inputs dan Outputs diubah menjadi Input dan Output. Sekarang hanya ada 1 input dan 1 output.
- Jika output berupa file, stream‑nya akan ditutup secara otomatis, tetapi jika berupa
Stream, maka akan tetap terbuka untuk penggunaan selanjutnya. - Menghapus metode AddInput, AddOutput.
- Menambahkan beberapa konstruktor yang lebih praktis:
SignOptions(IData inputData, IData outputData, IData pfxData, string password)SignOptions(string inputFile, string outputFile, string pfxFile, string pfxPassword)SignOptions(Stream inputStream, Stream outputStream, Stream pfxStream, string pfxPassword)
- Menambahkan properti yang dapat diubah:
Stream Pfxstring PfxPasswordIData InputIData Output
Contoh Penggunaan:
Contoh penggunaan SignOptions.
using var pfxStream = File.OpenRead(@"path_to_your_pfx_file.pfx");
var options = new SignOptions(pfxStream, "password_of_your_pfx_file");
// Tetapkan jalur file input dan output
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");Contoh Penggunaan:
Contoh yang menunjukkan cara menandatangani file PDF dengan gaya paling singkat.
PdfSecurity.Sign(new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file"));Contoh Penggunaan:
Contoh yang menunjukkan cara menandatangani dokumen PDF menggunakan stream.
// Siapkan stream
using var pdfStreamInput = File.OpenRead(@"path_to_your_pdf_file.pdf");
using var pfxStreamInput = File.OpenRead(@"path_to_your_pfx_file.pfx");
using var pdfStreamOutput = new MemoryStream();
// Buat objek SignOptions untuk mengatur instruksi
var options = new SignOptions(pdfStreamInput, pdfStreamOutput, pfxStreamInput, "password_of_your_pfx_file");
// Lakukan proses
PdfSecurity.Sign(options);Menghapus kelas Signature
- Implementasi plugin sebelumnya secara bertahap dihentikan. Fungsionalitas kelas ini telah digantikan oleh kelas PdfSecurity.
- Kelas Signature: dihapus, gunakan PdfSecurity.
Contoh Penggunaan:
Contoh yang menunjukkan cara menandatangani dokumen PDF.
// Buat objek SignOptions untuk mengatur instruksi
var options = new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Lakukan proses
PdfSecurity.Sign(options);Menghapus kelas FormExporter
- Implementasi plugin sebelumnya secara bertahap dihentikan. Fungsionalitas kelas ini telah digantikan oleh kelas PdfExtractor dan PdfForm.
- Kelas FormExporter: dihapus, gunakan PdfExtractor atau PdfForm.
Contoh Penggunaan:
Contoh yang menunjukkan cara mengekspor nilai Form ke file CSV dengan PdfExtractor.
// Buat objek ExtractFormDataToDsvOptions untuk mengatur instruksi
var options = new ExtractFormDataToDsvOptions(',', true);
// Tambahkan jalur file input
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Tetapkan jalur file output
options.AddOutput(new FileData("path_to_result_csv_file.csv"));
// Lakukan proses
PdfExtractor.Extract(options);Contoh Penggunaan:
Contoh yang menunjukkan cara mengekspor nilai Form ke file TSV dan mengatur properti dengan PdfForm.
// Buat objek ExtractFormDataToDsvOptions untuk mengatur instruksi
var options = new ExtractFormDataToDsvOptions();
// Tetapkan delimiter
options.Delimiter = '\t';
// Sertakan nama bidang pada hasil
options.AddFieldName = true;
// Tambahkan jalur file input
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Tetapkan jalur file output
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));
// Lakukan proses
PdfForm.Extract(options);Meningkatkan kelas FileData
- Metode
ToString()di‑override.
Perbaikan lain
📄 PDF ke DOC
- Memperbaiki konversi PDF ke DOC yang memakan waktu berlebihan.
🌐 PDF ke HTML / HTML ke PDF
- Memperbaiki konversi PDF ke HTML yang menghasilkan gambar transparan.
- Memperbaiki konversi HTML ke PDF yang menyebabkan konten tumpang tindih.
- Memperbaiki konversi HTML ke PDF yang mengabaikan lebar tabel.
🖼️ PDF ke PNG/TIFF
- Memperbaiki konversi PDF ke PNG yang mengkonsumsi memori berlebihan.
- Memperbaiki konversi PDF ke PNG yang tidak mempertahankan font yang disematkan.
- Memperbaiki konversi PDF ke TIFF yang melemparkan pengecualian.
📑 PDF ke PDF/A
- Memperbaiki konversi PDF ke PDF/A yang kehilangan warna dokumen.
- Memperbaiki konversi PDF ke PDF/A yang menyebabkan teks saling tumpang tindih pada output.
- Memperbaiki metode
Validate()pada PDF/A yang mengembalikan hasil yang tidak tepat. - Memperbaiki validasi PDF/A yang menghasilkan hasil yang salah.
📂 Operasi Lain
- Memperbaiki
System.FormatExceptionyang dilempar saat memverifikasi tanda tangan PDF. - Memperbaiki penggabungan dokumen yang melemparkan pengecualian.