Dokumentasikan Rilis

Ujung

Untuk mulai menggunakan Documentize SDK, Anda memiliki beberapa opsi untuk mengunduh biner ke sistem Anda. Silakan pilih metode yang paling sesuai dengan kebutuhan spesifik Anda.

Peringatan

Dengan mengunduh Documentize SDK dalam bentuk apa pun, Anda setuju dengan Smallize EULA.

Ambil dari NuGet

Cara termudah untuk memulai dengan Documentize adalah dengan menginstal paket .NET langsung dari NuGet. Berikut beberapa metode cepat untuk melakukannya. Untuk informasi lebih lanjut, kunjungi panduan instalasi NuGet.

dotnet add package Documentize
NuGet\Install-Package Documentize
<PackageReference Include="Documentize" Version="24.x.x" />

Unduh Installer MSI

Opsi lain untuk mendapatkan Documentize adalah dengan mengunduh paket MSI, yang menginstal kumpulan yang diperlukan (DLL). Cukup klik tombol unduh berikut atau pelajari lebih lanjut tentang metode instalasi ini di panduan instalasi MSI.

Unduh Terbaru v26.09 MSI

Unduh ZIP

Anda juga dapat mengunduh paket ZIP yang hanya berisi file DLL yang dapat Anda simpan dengan cara yang Anda inginkan. Pelajari lebih lanjut tentang ini di panduan instalasi ZIP.

Unduh Terbaru v26.09 ZIP
28 Des 2024

Subbagian Dokumentasikan Rilis

Tentang Documentize

Apa itu Documentize?

Documentize adalah komponen .NET yang kuat yang memberdayakan pengembang untuk membuat dokumen PDF profesional dan serbaguna secara programatis, menghilangkan kebutuhan akan alat eksternal seperti Adobe Acrobat.

Mengapa Menggunakan Documentize?

Berikut alasan mengapa Documentize menonjol:

  • Pembuatan PDF Tanpa Usaha: Hasilkan PDF sederhana atau kompleks secara instan, menggabungkan elemen seperti tabel, grafik, gambar, hyperlink, dan font kustom.
  • Keamanan yang Ditingkatkan: Integrasikan fitur keamanan yang kuat untuk melindungi dokumen PDF sensitif Anda.
  • Opsi Pengembangan yang Fleksibel: Pilih antara membuat PDF menggunakan API yang ramah pengguna atau template XML untuk alur kerja yang lebih efisien.
  • Integrasi yang Sederhana: Documentize terintegrasi dengan mulus dengan berbagai aplikasi .NET, termasuk aplikasi web ASP.NET dan aplikasi Windows, yang ditulis dalam bahasa seperti C#, VB.NET, dan J#.
  • Cepat dan Efisien: Komponen yang ringan ini dengan efisien menghasilkan PDF, mengoptimalkan kinerja aplikasi Anda.
  • Biaya Efektif dan Didukung: Nikmati harga yang kompetitif, kinerja yang luar biasa, dan dukungan komprehensif untuk pengalaman pengembangan yang lancar.

Fitur Utama

  • Dukungan Konten Kaya: Tambahkan tabel, grafik, gambar, hyperlink, font kustom, dan lainnya ke PDF Anda.
  • Kemampuan Kompresi: Kurangi ukuran file PDF Anda untuk penyimpanan dan distribusi yang lebih mudah.
  • Keamanan Tingkat Lanjut: Terapkan fitur keamanan untuk melindungi informasi rahasia dalam dokumen PDF Anda.
  • Metode Pembuatan Ganda: Buat PDF menggunakan API programatis atau template XML untuk fleksibilitas tambahan.
  • Kompatibilitas Lintas Platform: Bekerja secara mulus dengan berbagai bahasa dan jenis aplikasi .NET.
  • Dukungan Multithreading: Memungkinkan pembuatan beberapa PDF secara bersamaan dengan aman di berbagai thread.
  • Sumber Pembelajaran: Akses demo komprehensif dan contoh kerja dalam C# untuk mempercepat proses pengembangan Anda.

Pilihan Ideal untuk Berbagai Industri

Documentize melayani berbagai industri di mana pembuatan PDF memainkan peran penting. Ini termasuk:

  • Keuangan dan Akuntansi: Hasilkan faktur, tanda terima, laporan keuangan, dan dokumen penting lainnya.
  • Kesehatan: Buat rekam medis pasien, resep, dan laporan lab dalam format yang aman dan terstandarisasi.
  • Manufaktur: Hasilkan spesifikasi produk, laporan kontrol kualitas, dan dokumen pengiriman.
  • Pemerintah dan Hukum: Hasilkan izin, lisensi, kontrak, dan dokumen pengadilan dengan fitur keamanan yang ditingkatkan.
  • Pendidikan: Buat sertifikat, transkrip, laporan, dan dokumen akademis lainnya.

Documentize memberdayakan pengembang di berbagai industri untuk menyederhanakan alur kerja pembuatan PDF mereka, memastikan efisiensi, keamanan, dan fleksibilitas.

28 Des 2024

Evaluate

Anda dapat dengan mudah mengunduh SDK Documentize untuk tujuan evaluasi. Versi evaluasi identik dengan versi yang dibeli, dengan satu-satunya perbedaan adalah cara Anda menerapkan lisensi.

Batasan Versi Evaluasi

Versi evaluasi dari Documentize (tanpa lisensi yang ditentukan) menyediakan fungsi produk penuh, tetapi memiliki dua batasan: itu menambahkan watermark evaluasi di atas halaman, dan hanya empat halaman yang dapat dilihat/diedit.

More information about Evaluation and License here

15 Agu 2025

Instalasi

Instalasi Documentize SDK

Documentize dapat diinstal melalui berbagai metode, masing-masing disesuaikan dengan lingkungan pengembangan dan preferensi yang berbeda. Berikut adalah cara yang dianjurkan untuk menginstal Documentize:

1. NuGet (Metode Diutamakan)

NuGet adalah metode yang paling langsung dan diutamakan untuk menginstal Documentize, memastikan bahwa Anda selalu memiliki versi dan pembaruan terbaru langsung di dalam lingkungan pengembangan Anda. Cek lebih banyak detail tentang metode instalasi ini di Cara menginstal Documentize SDK menggunakan NuGet.

2. Penginstal MSI

Penginstal MSI adalah pilihan yang nyaman jika Anda lebih suka menginstal DLL Documentize langsung ke sistem Anda. Metode ini ideal untuk pengembang yang mungkin ingin menggunakan Documentize di berbagai proyek tanpa perlu mengelola file DLL secara manual. Cek lebih banyak detail tentang metode instalasi ini di Cara menginstal Documentize SDK menggunakan MSI.

3. Arsip ZIP

Untuk pengembang yang lebih suka pendekatan manual, arsip ZIP berisi DLL Documentize, yang dapat diekstrak dan ditambahkan ke proyek Anda secara langsung. Cek lebih banyak detail tentang metode instalasi ini di Cara menginstal Documentize SDK menggunakan ZIP.

28 Des 2024

Subbagian Instalasi

Menginstal Documentize melalui NuGet


Ujung

NuGet adalah manajer paket sumber terbuka gratis untuk .NET yang menyederhanakan penambahan, penghapusan, dan pembaruan pustaka dalam proyek Visual Studio. Ini mengelola file pustaka, referensi, dan perubahan konfigurasi secara otomatis.

Cara Menginstal melalui Konsol Manajer Paket NuGet

  1. Buka Proyek Anda:

    • Jalankan Visual Studio dan buka aplikasi .NET Anda.
  2. Akses Konsol Manajer Paket:

    • Navigasikan ke Alat > Manajer Paket NuGet > Konsol Manajer Paket.
  3. Instal Paket:

    • Untuk menginstal rilis penuh terbaru, masukkan perintah Install-Package Documentize.
    • Untuk menginstal rilis terbaru termasuk perbaikan cepat, gunakan Install-Package Documentize -prerelease.
    • Tekan Enter untuk mengeksekusi perintah.

Cara Memperbarui Paket melalui Konsol Manajer Paket NuGet

Jika Anda sudah menginstal Documentize melalui NuGet dan ingin memperbarui ke versi terbaru:

  1. Buka Proyek Anda:

    • Jalankan Visual Studio dan buka aplikasi .NET Anda.
  2. Akses Konsol Manajer Paket:

    • Navigasikan ke Alat > Manajer Paket NuGet > Konsol Manajer Paket.
  3. Perbarui Paket:

    • Untuk memperbarui ke rilis penuh terbaru, masukkan Update-Package Documentize.
    • Untuk memperbarui ke rilis terbaru termasuk perbaikan cepat, gunakan Update-Package Documentize -prerelease.
    • Tekan Enter untuk mengeksekusi perintah.

Cara Menginstal melalui GUI Manajer Paket NuGet

  1. Buka Proyek Anda:

    • Jalankan Visual Studio dan buka aplikasi .NET Anda.
  2. Navigasi ke Kelola Paket NuGet:

    • Dari menu Proyek, pilih Kelola Paket NuGet.
  3. Cari Documentize:

    • Pergi ke tab Telusuri dan masukkan Documentize ke dalam kotak pencarian.
  4. Instal Paket:

    • Klik Instal/Pembaruan di samping versi terbaru dari Documentize.
    • Konfirmasikan dengan mengklik Terima di jendela pop-up.

Kelebihan Menggunakan NuGet

  • Manajemen Ketergantungan Otomatis:

    • NuGet secara otomatis menangani ketergantungan, memastikan bahwa semua pustaka yang diperlukan disertakan dan diperbarui dengan benar. Ini mengurangi risiko ketergantungan yang hilang atau tidak kompatibel.
  • Pembaruan yang Disederhanakan:

    • Memperbarui paket sangat sederhana dengan NuGet, baik melalui Konsol Manajer Paket atau GUI. Ini memudahkan untuk menjaga pustaka Anda tetap terbaru dengan fitur-fitur dan perbaikan bug terbaru.
  • Terintegrasi dengan Visual Studio:

    • NuGet terintegrasi dengan baik di Visual Studio, menyediakan antarmuka yang ramah pengguna untuk mengelola paket tanpa meninggalkan lingkungan pengembangan.
  • Versi:

    • NuGet memungkinkan Anda untuk menentukan dan mengelola berbagai versi pustaka, memungkinkan Anda dengan mudah kembali ke versi sebelumnya atau menguji rilis baru tanpa mengganggu pengembangan Anda.

Kekurangan Menggunakan NuGet

  • Terbatas pada Visual Studio:

    • NuGet terutama dirancang untuk digunakan di dalam Visual Studio. Meskipun dapat digunakan di lingkungan lain, integrasinya paling kuat di Visual Studio.
  • Kemungkinan Konflik Versi:

    • Dalam proyek yang lebih besar dengan banyak ketergantungan, mengelola versi dan menyelesaikan konflik bisa menjadi kompleks. NuGet menyediakan alat untuk mengelola ini, tetapi memerlukan perhatian yang cermat.
  • Ketergantungan Jaringan:

    • Menginstal dan memperbarui paket memerlukan koneksi internet. Jika Anda bekerja di lingkungan dengan akses internet yang terbatas atau tidak ada, Anda mungkin perlu menggunakan metode offline atau mengunduh paket sebelumnya.
  • Kompleksitas untuk Proyek Besar:

    • Untuk proyek yang sangat besar dengan pohon ketergantungan yang luas, beban pengelolaan paket melalui NuGet bisa menjadi merepotkan. Dalam kasus seperti itu, alat tambahan atau strategi mungkin diperlukan untuk mengelola ketergantungan secara efektif.

Menginstal Documentize melalui MSI

Ujung

Installer MSI adalah pilihan yang nyaman dan ramah pengguna untuk menginstal Documentize, terutama jika Anda lebih suka menginstal DLL secara global di sistem. Metode ini menyederhanakan proses instalasi dengan mengotomatisasi banyak langkah yang terlibat.

Cara Menginstal melalui Installer MSI

  1. Unduh Installer MSI:

    • Klik v26.09 MSI untuk mengunduh installer MSI untuk versi terbaru dari Documentize.
  2. Jalankan Installer:

    • Klik dua kali file MSI yang diunduh untuk meluncurkan panduan instalasi.
  3. Ikuti Panduan Instalasi:

    • Ikuti petunjuk di layar yang diberikan oleh installer. Anda mungkin perlu menyetujui perjanjian lisensi dan memilih opsi instalasi.
  4. Selesaikan Instalasi:

    • Setelah instalasi selesai, DLL Documentize akan diinstal ke dalam Global Assembly Cache (GAC) sistem Anda atau lokasi lain yang ditentukan.
  5. Verifikasi Instalasi:

    • Periksa bahwa DLL telah terinstal dengan benar dengan memverifikasi keberadaannya di direktori instalasi yang ditentukan atau GAC.

Kelebihan Menggunakan Installer MSI

  • Kemudahan Penggunaan:

    • Installer MSI menyediakan proses instalasi yang sederhana dan terarah. Ini menangani semua konfigurasi yang diperlukan dan menempatkan DLL di lokasi pusat, sehingga mudah untuk menggunakan Documentize di berbagai proyek.
  • Instalasi Sistem secara Global:

    • Metode MSI menginstal Documentize ke dalam Global Assembly Cache (GAC) sistem atau lokasi pusat lainnya. Ini memungkinkan aplikasi mana pun di sistem untuk mengakses DLL tanpa perlu merujuknya secara individual di setiap proyek.
  • Pembaruan Otomatis:

    • Jika Documentize menyediakan installer yang diperbarui, Anda dapat dengan mudah memperbarui instalasi Anda dengan menjalankan file MSI baru, yang biasanya menangani proses pembaruan dengan lancar.
  • Konsistensi:

    • Menggunakan installer MSI memastikan bahwa semua file yang diperlukan diinstal dengan benar dan konsisten di berbagai lingkungan, mengurangi risiko DLL yang hilang atau salah tempat.

Kekurangan Menggunakan Installer MSI

  • Fleksibilitas Terbatas:

    • Installer MSI menginstal Documentize ke lokasi global sistem, yang mungkin tidak cocok untuk semua lingkungan pengembangan. Ini mungkin kurang fleksibel untuk mengakomodasi konfigurasi atau versi spesifik proyek.
  • Potensi Overhead:

    • Menginstal DLL ke GAC dapat memperkenalkan overhead dan kompleksitas, terutama dalam skenario di mana beberapa versi Documentize mungkin diperlukan secara bersamaan.
  • Penghapusan Manual:

    • Jika Anda perlu mencopot pemasangan Documentize, Anda harus menggunakan penghapus yang disediakan oleh MSI, yang mungkin meninggalkan file atau konfigurasi residual jika tidak dikelola dengan baik.
  • Konflik Versi:

    • Instalasi sistem secara global dapat menyebabkan konflik versi jika proyek yang berbeda memerlukan versi Documentize yang berbeda. Mengelola konflik ini mungkin memerlukan konfigurasi atau pembersihan tambahan.

Menginstal Documentize melalui ZIP

Ujung

Arsip ZIP ideal untuk pengembang yang lebih memilih pendekatan manual dalam mengelola pustaka. Metode ini memungkinkan Anda untuk langsung mengunduh dan mengekstrak file DLL yang diperlukan tanpa bergantung pada manajer paket atau penginstal.

Cara Menginstal lewat Arsip ZIP

  1. Unduh Arsip ZIP:

    • Klik v26.09 ZIP untuk mengunduh versi terbaru dari Documentize dalam format arsip.
  2. Ekstrak Konten:

    • Setelah mengunduh, ekstrak isi file ZIP ke direktori pilihan Anda. Anda dapat memilih untuk menyimpan file ini di direktori bersama atau di dalam struktur proyek Anda.
  3. Tambahkan Referensi ke Proyek Anda:

    • Buka proyek Anda di IDE Anda (misalnya, Visual Studio).
    • Pergi ke Proyek > Tambah Referensi > Telusuri dan navigasikan ke direktori tempat Anda mengekstrak DLL.
    • Pilih file DLL yang relevan dan tambahkan sebagai referensi ke proyek Anda.
  4. Pembaruan Manual:

    • Jika versi baru dari Documentize dirilis, Anda perlu secara manual mengunduh arsip ZIP yang diperbarui dan mengganti file DLL lama di proyek Anda dengan yang baru.

Pro Menggunakan Arsip ZIP

  • Kontrol Penuh:

    • Anda memiliki kontrol penuh atas di mana dan bagaimana DLL disimpan dan direferensikan dalam proyek Anda. Ini bisa menguntungkan jika Anda lebih suka pengaturan kustom atau perlu mengelola ketergantungan secara manual.
  • Tidak Bergantung pada Manajer Paket:

    • Tidak seperti NuGet, Anda tidak bergantung pada manajer paket untuk menangani instalasi. Ini bisa menguntungkan di lingkungan di mana manajer paket tidak tersedia atau tidak diinginkan.
  • Portabilitas:

    • Arsip ZIP dapat dengan mudah dibagikan dan dipindahkan ke berbagai sistem, menjadikannya ideal untuk proyek yang perlu berpindah atau disebarkan tanpa bergantung pada alat eksternal.

Kontra Menggunakan Arsip ZIP

  • Pengelolaan Manual:

    • Tidak seperti NuGet, di mana pembaruan dan pengelolaan ketergantungan otomatis, dengan arsip ZIP, Anda harus secara manual mengelola pembaruan dan memastikan semua DLL yang diperlukan direferensikan dengan benar.
  • Risiko Konflik Versi:

    • Jika Anda mengelola beberapa proyek atau bekerja dalam tim, ada risiko konflik versi jika proyek yang berbeda menggunakan versi DLL yang berbeda. Ini memerlukan pelacakan versi yang teliti di seluruh proyek.
  • Tidak Ada Pembaruan Otomatis:

    • Anda tidak akan menerima pembaruan otomatis atau pemberitahuan saat versi baru tersedia. Ini dapat menyebabkan risiko menggunakan pustaka yang sudah usang kecuali Anda secara rutin memeriksa pembaruan.

Lingkungan Non-Windows

Bekerja dengan DLL .NET Core di Lingkungan Non-Windows

Karena Documentize untuk .NET menyediakan dukungan .NET Standard 2.0 (.NET Core 2.0), ia dapat digunakan dalam Aplikasi Core yang berjalan di sistem operasi mirip Linux. Kami terus bekerja untuk meningkatkan dukungan .NET Core di API kami. Namun, ada beberapa operasi yang kami rekomendasikan agar pelanggan kami lakukan untuk mendapatkan hasil yang lebih baik saat menggunakan fitur Documentize untuk .NET. Silakan instal:

  • paket libgdiplus
  • Paket dengan font yang kompatibel dengan Microsoft: ttf-mscorefonts-installer (misalnya, sudo apt-get install ttf-mscorefonts-installer). Font ini harus ditempatkan di direktori /usr/share/fonts/truetype/msttcorefonts karena Documentize untuk .NET memindai folder ini di sistem operasi mirip Linux. Jika sistem operasi memiliki folder/direktori default lain untuk font, Anda harus menggunakan baris kode berikut sebelum melakukan operasi apa pun menggunakan Documentize:
    Documentize.Pdf.Text.FontRepository.Sources.Add(new FolderFontSource("<jalur pengguna ke font ms>"));

Apa yang Baru

v26.9

  • Kelas FormFlattener dihapus
  • Kelas GetFieldNamesOptions telah dirancang ulang
  • Perbaikan lainnya

v26.8

  • Kelas **SignOptions** telah dirancang ulang
  • Menghapus kelas **Signature**
  • Menghapus kelas **FormExporter**
  • Meningkatkan kelas **FileData**
  • Perbaikan lain

v26.7

  • Menghapus Class ImageExtractor
  • Menghapus Class Timestamp
  • Perbaikan Lainnya

v26.6

  • PdfSecurity: Tambahkan kemampuan menandatangani PDF dengan Timestamp tanpa PFX
  • Kelas TextExtractor Dihapus
  • Menambahkan lebih banyak info dan petunjuk untuk entitas baru
  • Menambahkan info tentang Sanitasi ke Dokumentasi dan Produk
  • Memperbaiki Exception pada konversi HTML ke PDF
  • Perbaikan lainnya

v26.5

  • Fitur Baru Sanitize untuk Keamanan PDF
  • Kelas Baru OptionsWithInputAndOutput
  • Kinerja Konversi PDF ke JPEG yang Ditingkatkan
  • Halaman produk "FAQs" diperbarui untuk situs ini
  • Perbaikan Lainnya

v26.4

  • Memperbaiki pengecualian PdfExtractor.Extract
  • Peningkatan Performa Rendering PDF ke TIFF
  • Membuat halaman produk untuk "PDF Converter" di situs ini
  • Perbaikan lainnya

v26.3

  • Mengubah Nama IDataSource menjadi IData
  • Mengubah Nama FileDataSource menjadi FileData
  • Mengubah Nama StreamDataSource menjadi StreamData
  • Mengubah Nama DirectoryDataSource menjadi DirectoryData
  • Mengubah properti **Delimiter** untuk **Feature ExtractFormDataToDsvOptions**
  • Membuat halaman produk untuk "PDF Manager" di situs ini
  • Membuat halaman produk untuk "PDF Form" di situs ini
  • Memperbaiki Masalah

v26.2

  • Fitur yang Ditingkatkan: Ekstrak Properti untuk PDF Extractor
  • Fitur yang Ditingkatkan: Ekstrak Teks untuk PDF Extractor
  • Bug yang Diperbaiki

v26.1

  • Fitur Baru: Ekstrak Properti untuk PDF Extractor
  • Peningkatan
  • Perbaikan Bug

v25.12

  • Plugin PDF Form Baru
  • Perubahan pada PDF Extractor
  • Peningkatan
  • Perbaikan Bug

v25.11

  • Plugin PDF Converter Baru
  • Plugin PDF Security Baru
  • Plugin PdfChatGpt terintegrasi ke PdfManager
  • Opsi baru untuk bekerja dengan ChatGpt
  • Peningkatan
  • Bug yang Diperbaiki

v25.10

  • Plugin PDF Extractor Baru
  • Plugin PDF Manager Baru
  • Peningkatan Kemudahan Penggunaan TableGenerator
  • Peningkatan Kemudahan Penggunaan PdfChatGpt
  • Perbaikan Bug

v25.9

  • Peningkatan kegunaan DocConverter dan penambahan mode ekstra
  • Peningkatan kegunaan PdfAConverter
  • Peningkatan kegunaan Timestamp
  • Dokumentasi yang diperbarui
  • Bug yang Diperbaiki

v25.8

  • Peningkatan kegunaan JpegConverter
  • Peningkatan kegunaan PngConverter
  • Peningkatan kegunaan XlsConverter
  • Peningkatan kegunaan Signature
  • Konstruktor PdfToHtmlOptions yang dimodifikasi
  • Tanda evaluasi TextExtractor yang dimodifikasi
  • Dokumentasi yang diperbarui
  • Bug yang Diperbaiki

v25.7

  • Peningkatan kegunaan Text Extractor
  • Peningkatan kegunaan Html Converter
  • Peningkatan kegunaan Image Extractor

v25.6

  • Peningkatan kegunaan Tiff Converter

v25.5

  • Menambahkan Plugin Baru: Form Exporter
  • Meningkatkan kegunaan Security

v25.4

  • Peningkatan kegunaan Optimizer
  • Peningkatan kegunaan Plugin Splitter
  • Peningkatan kegunaan Plugin Merger

v25.3

  • Menambahkan Plugin Baru: Form Flattener

v25.2

  • Menambahkan Plugin Baru: TOC Generator

v25.1

  • Plugin yang Ditingkatkan: ImageExtractor

v24.12

  • Menambahkan Plugin Baru: PDF ke PNG Converter
  • Menambahkan Plugin Baru: PDF ke TIFF Converter
  • Menambahkan Plugin Baru: PDF Table Generator
  • Mengganti Nama Kelas PdfDoc menjadi DocConverter

v24.11

  • Plugin Baru yang Ditambahkan: PDF ke JPEG Converter
  • Kelas DirectoryDataSource yang Ditambahkan
  • Kelas PdfToJpegOptions yang Ditambahkan

v24.10

  • Menambahkan Plugin Baru: PDF/A Converter

v24.9

  • Dirilis
10 Okt 2024

Subbagian Apa yang Baru

v26.9

Kelas FormFlattener dihapus

  • Implementasi plugin sebelumnya secara bertahap dihentikan. Fungsionalitas kelas ini telah digantikan oleh kelas PdfForm.
  • Kelas FormFlattener: dihapus, gunakan PdfForm.

Contoh Penggunaan

Contoh ini menunjukkan cara mem‑flatten field dalam file PDF.

// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Flatten(options);

Contoh Penggunaan (skip field)

Contoh ini menunjukkan cara mem‑flatten field dalam file PDF dan melewati field pertama.

// Get Fields Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));
// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Skip 1 field.
options.SkipFields.Add(fieldNames[0]);
// Perform the process
PdfForm.Flatten(options);

Kelas GetFieldNamesOptions telah dirancang ulang

  • Mewarisi dari kelas OptionsWithInput.
  • Menambahkan properti Input.

Contoh Penggunaan (dari file)

Contoh ini menunjukkan cara mendapatkan nama field dari file PDF.

// Get Field Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));

Contoh Penggunaan (dari stream)

Contoh ini menunjukkan cara mendapatkan nama field dari stream PDF.

// Prepare input stream
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
// Get Field Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions(inputStream));

Perbaikan lainnya

PDF ke DOC

  • Memperbaiki konversi PDF ke DOC yang menyebabkan OutOfMemoryException.
  • Memperbaiki konversi PDF ke HTML yang menampilkan logo footer rusak.

PDF ke JPEG

  • Memperbaiki konversi PDF ke JPEG yang menyebabkan OutOfMemoryException.
  • Memperbaiki konversi PDF ke PNG yang menyebabkan InvalidOperationException.
  • Memperbaiki output PDF ke TIFF yang kehilangan informasi.

PDF ke PDF/A

  • Memperbaiki output PDF ke PDF/A yang tidak valid untuk PDF/A-1b atau PDF/A-3b.
  • Memperbaiki konversi PDF/A-2b yang menyebabkan InvalidCastException.
7 Sep 2026

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 Pfx
    • string PfxPassword
    • IData Input
    • IData 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.FormatException yang dilempar saat memverifikasi tanda tangan PDF.
  • Memperbaiki penggabungan dokumen yang melemparkan pengecualian.
13 Agu 2026

v26.7

Menghapus Class ImageExtractor

  • Implementasi sebelumnya dari plugin secara bertahap dihentikan. Fungsionalitas kelas ini telah digantikan oleh Class PdfExtractor.
  • Class ImageExtractor: dihapus, gunakan PdfExtractor.

Contoh Penggunaan:

Contoh berikut menunjukkan cara mengekstrak gambar dari dokumen PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryData("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Menghapus Class Timestamp

  • Fungsionalitas kelas ini telah digantikan oleh Class PdfSecurity.
  • Class Timestamp: dihapus, gunakan PdfSecurity.
  • Class AddTimestampOptions: dihapus, gunakan SignOptions dan TimestampOptions.

Contoh Penggunaan:

Contoh berikut menunjukkan cara menandatangani dokumen PDF dengan Timestamp.

// Create SignOptions object to set Timestamp
var options = new SignOptions(new TimestampOptions("server_url"));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Perbaikan Lainnya

🖥️ HTML ke PDF

  • Memperbaiki konversi HTML ke PDF dimana terjadi penempatan gambar yang salah dan teks tertimpa
  • Memperbaiki konversi HTML ke PDF dimana konten halaman tidak pas dengan benar
  • Memperbaiki masalah HTML ke PDF dimana PDF yang dihasilkan menampilkan pita hitam

📑 PDF ke PDF/A

  • Memperbaiki API PDF ke PDF/A yang melemparkan pengecualian
  • Memperbaiki konversi PDF ke PDF/A yang menghasilkan output dengan format yang tidak tepat
  • Memperbaiki masalah memori pada konversi PDF ke PDF/A
  • Memperbaiki masalah konversi PDF ke PDF/A-3a

⚙️ Masalah yang Tersisa

  • Memperbaiki hilangnya konten teks saat mengonversi PDF ke PNG dan HTML
  • Memperbaiki masalah dimana beberapa bidang menjadi kosong setelah flattening
  • Memperbaiki masalah dimana dokumen PDF menampilkan error setelah flattening
  • Memperbaiki masalah dimana optimasi PDF mengganggu format konten
7 Sep 2026

v26.6

PdfSecurity: Tambahkan kemampuan menandatangani PDF dengan Timestamp tanpa PFX

  • Sekarang Anda dapat menambahkan timestamp ke dokumen PDF tanpa menentukan file PFX dan kata sandi.
  • Class SignOptions: memiliki konstruktor dengan Class TimestampOptions.

Contoh Penggunaan

Contoh ini menunjukkan cara menandatangani dokumen PDF dengan Timestamp.

// Create SignOptions object to set Timestamp
var options = new SignOptions(new TimestampOptions("server_url"));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Kelas TextExtractor Dihapus

  • Implementasi plugin sebelumnya secara bertahap dihentikan. Fungsi kelas ini telah digantikan oleh Class PdfExtractor.
  • Class TextExtractor: dihapus, gunakan PdfExtractor.

Menambahkan lebih banyak info dan petunjuk untuk entitas baru

  • Menambahkan komentar XML untuk OptionsWithInputAndOutput dan SanitizeOptions.
  • Menambahkan informasi tentang nilai default pada SanitizeOptions.

Menambahkan info tentang Sanitasi ke Dokumentasi dan Produk

Memperbaiki Exception pada konversi HTML ke PDF

Perbaikan lainnya

📄 General / System

  • Memperbaiki penggabungan dokumen PDF yang rusak
  • Memperbaiki pemrosesan file yang rusak
  • Memperbaiki System.StackOverflowException saat membuka file PDF
  • Memperbaiki ekstraksi teks yang berhenti pada file PDF tertentu

🌐 HTML → PDF

  • Memperbaiki HTML ke PDF: karakter Cina ditampilkan secara tidak tepat

📑 PDF → DOC

  • Memperbaiki PDF ke DOC: anotasi sorotan masih menutupi teks
  • Memperbaiki PDF ke DOC: gambar ditampilkan secara tidak tepat
  • Memperbaiki masalah kinerja konversi PDF ke DOC

📊 PDF → Excel

  • Memperbaiki PDF ke Excel: gambar tabel diabaikan

🖼️ PDF → PNG

  • Memperbaiki PDF ke PNG: konversi memakan waktu berlebihan

🛡️ PDF → PDF/A

  • Memperbaiki kehilangan kepatuhan PDF A‑1A dan kerusakan formulir setelah disimpan
  • Memperbaiki masalah waktu konversi PDF ke PDFA
  • Memperbaiki kehilangan semi‑transparansi selama konversi PDF ke PDFA
  • Memperbaiki masalah tumpang tindih teks pada PDF ke PDFA
  • Memperbaiki masalah render teks pada PDF ke PDFA
  • Memperbaiki korupsi dokumen pada PDF ke PDFA3b
7 Sep 2026

v26.5

Fitur Baru Sanitize untuk Keamanan PDF

  • Sanitize data tersembunyi dari dokumen PDF, memastikan bahwa informasi sensitif atau tidak diperlukan seperti metadata, lampiran, anotasi, JavaScripts, formulir, lapisan, indeks pencarian, atau konten pribadi dihapus atau diubah.
  • Class PdfSecurity: menambahkan metode Sanitize untuk menyaring dokumen PDF.
  • Class SanitizeOptions: Mewakili opsi konfigurasi untuk menyaring data tersembunyi dalam dokumen bagi kelas PdfSecurity.
  • Property Input: Mengambil atau menetapkan Data Input.
  • Property Output: Mengambil atau menetapkan Data Output.
  • Property ConvertPagesToImages: Mengambil atau menetapkan opsi untuk mengonversi halaman menjadi gambar.
  • Property ImageDpi: Mengambil atau menetapkan opsi untuk resolusi gambar halaman saat konversi halaman ke gambar.
  • Property RemoveAnnotations: Mengambil atau menetapkan nilai yang menunjukkan apakah anotasi harus dihapus dari dokumen.
  • Property RemoveSearchIndexAndPrivateInfo: Mengambil atau menetapkan nilai yang menunjukkan apakah indeks pencarian dan informasi pribadi harus dihapus dari dokumen.
  • Property FlattenForms: Mengambil atau menetapkan nilai yang menunjukkan apakah formulir dalam dokumen harus diluruskan selama proses penyaringan.
  • Property FlattenLayers: Mengambil atau menetapkan opsi untuk meluruskan lapisan dalam dokumen PDF.
  • Property RemoveJavaScriptsAndActions: Mengambil atau menetapkan nilai yang menunjukkan apakah JavaScript dan aksi terkait harus dihapus dari dokumen.
  • Property RemoveMetadata: Mengambil atau menetapkan opsi untuk menghapus metadata dari dokumen.
  • Property RemoveAttachments: Mengambil atau menetapkan opsi untuk menghapus semua berkas lampiran dari dokumen.

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring dokumen PDF.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF dari stream ke stream.

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream = new MemoryStream();
// Create SanitizeOptions object to set input and output streams
var options = new SanitizeOptions(inputStream, outputStream);
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF dari file ke stream.

// Prepare output stream
using var outputStream = new MemoryStream();
// Create SanitizeOptions object to set input file and output stream
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", outputStream);
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF dari file ke stream dengan mengatur properti input dan output secara manual.

// Create SanitizeOptions object
var options = new SanitizeOptions();
//Set Input file
options.Input = new FileData("path_to_your_pdf_file.pdf");
//Set Output file
options.Output = new FileData("path_to_result_pdf_file.pdf");
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF tanpa menghapus Metadata.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveMetadata = false;
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF tanpa menghapus Lampiran.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveAttachments = false;
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF dengan mengonversi semua halaman menjadi gambar dan mengatur DPI hasil.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// Turn on conversion and set dpi
options.ConvertPagesToImages = true;
options.ImageDpi = 200;
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring PDF tanpa menghapus JavaScripts dan Aksi.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveJavaScriptsAndActions = false;
// Perform the process
PdfSecurity.Sanitize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menyaring file PDF dalam gaya paling singkat.

PdfSecurity.Sanitize(new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf"));

Kelas Baru OptionsWithInputAndOutput

  • Mewakili opsi dasar untuk operasi dengan 1 Data Input dan 1 Data Output.
  • Berdasarkan OptionsWithInput.
  • Property Input: Mengambil atau menetapkan Data Input.
  • Property Output: Mengambil atau menetapkan Data Output.

Kinerja Konversi PDF ke JPEG yang Ditingkatkan

Halaman produk “FAQs” diperbarui untuk situs ini

https://docs.documentize.com/faqs/

Perbaikan Lainnya

  • Memperbaiki masalah kecepatan konversi HTML besar ke PDF
  • Memperbaiki PDF ke HTML: Terjadi OutOfMemoryException
  • Memperbaiki PDF ke PDFA: konten halaman terpotong
  • Memperbaiki PDF ke PDFA: masalah render gambar transparan
  • Memperbaiki PDF ke PDFA2b: anotasi hilang pada output
  • Memperbaiki PDF ke PDF/A - Gambar tampil terbalik pada file output
  • Memperbaiki PDF ke PDF/A - File hasil tidak memenuhi kepatuhan PDF/A_2a
  • Memperbaiki PDF ke PDF/A - File hasil tidak memenuhi kepatuhan
  • Memperbaiki PDF ke PDF/A - Tanda tangan menjadi hitam setelah konversi
  • Memperbaiki PDF ke PDF/A - Justifikasi teks berubah secara tak terduga
  • Memperbaiki PDF ke PNG - Konversi memakan waktu berlebihan
  • Memperbaiki PDF ke PNG - Gambar output tidak tepat
  • Memperbaiki PDF ke PNG - Gambar output menampilkan garis gelap
  • Memperbaiki ketidakmampuan memvalidasi kepatuhan PDF/A_1b dokumen
7 Sep 2026

v26.4

Memperbaiki pengecualian PdfExtractor.Extract

  • Metode PdfExtractor.Extract: tidak lagi melempar pengecualian bila tanggal Created dan Modified tidak ditemukan dalam dokumen masukan.
  • Properti PdfProperties.Created: mengembalikan null bila nilai tidak ditemukan dalam dokumen masukan. Tipe data diubah dari DateTime menjadi DateTime?.
  • Properti PdfProperties.Modified: mengembalikan null bila nilai tidak ditemukan dalam dokumen masukan. Tipe data diubah dari DateTime menjadi DateTime?.

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Properti Created dan Modified

// Buat objek ExtractPropertiesOptions untuk menetapkan file input
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Jalankan proses dan dapatkan Properti
var pdfProperties = PdfExtractor.Extract(options);

var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

Peningkatan Performa Rendering PDF ke TIFF

Membuat halaman produk untuk “PDF Converter” di situs ini

https://products.documentize.com/pdf-converter/

Perbaikan lainnya

  • Memperbaiki HTML ke PDF – Performa sangat lambat dengan teks HTML yang besar
  • Memperbaiki HTML ke PDF – Header dan footer tidak muncul pada halaman berikutnya
  • Memperbaiki HTML ke PDF – Tooltip gagal dirender dengan benar
  • Memperbaiki PDF ke DOC – Konversi memicu pengecualian OutOfMemory
  • Memperbaiki PDF ke XLS – Kolom yang digabung menjadi satu kolom tunggal
  • Memperbaiki PDF ke HTML – Gambar latar belakang tidak muncul
  • Memperbaiki PDF ke HTML – Tautan hiper lokal tidak ditampilkan
  • Memperbaiki PDF ke JPEG – Gambar output muncul berwarna hitam
  • Memperbaiki PDF ke PDF/A – Masalah pemformatan pada file hasil
  • Memperbaiki PDF/A_1b – File hasil tidak sesuai standar
  • Memperbaiki PDF ke PDF/A_3b – Masalah pemformatan teks pada file output
  • Memperbaiki PDF ke PDF/A-2B – Konversi menghapus karakter matematika saat menggunakan font OpenType MATH
7 Sep 2026

v26.3

Mengubah Nama IDataSource menjadi IData

  • Interface IDataSource: diubah menjadi IData.
  • Kelas opsi sekarang lebih mudah digunakan.

Mengubah Nama FileDataSource menjadi FileData

  • Class FileDataSource: diubah menjadi FileData.
  • Kelas opsi sekarang lebih mudah digunakan.
  • Komentar XML diperbarui dan diperbaiki.
  • Semua contoh dengan Input dan Output diperbarui.

Contoh Penggunaan

Contoh ini menunjukkan cara menggunakan FileData pada Input dan Output.

// Create EncryptOptions object to set instructions
var options = new EncryptOptions("123456", "qwerty");

// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));

// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));

// Perform the process
PdfSecurity.Encrypt(options);

Mengubah Nama StreamDataSource menjadi StreamData

  • Class StreamDataSource: diubah menjadi StreamData.
  • Kelas opsi sekarang lebih mudah digunakan.
  • Komentar XML diperbarui dan diperbaiki.
  • Semua contoh dengan Input dan Output diperbarui.

Contoh Penggunaan

Contoh ini menunjukkan cara menggunakan StreamData pada Output.

// Create TocOptions object to set instructions
var options = new TocOptions();

// Set the Title
options.Title = "My Table of Contents";

// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));

// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));

// Set output stream 
var outputStream = new MemoryStream();
options.AddOutput(new StreamData(outputStream));
options.CloseOutputStreams = false;

// Perform the process
PdfManager.AddTableOfContents(options);

Mengubah Nama DirectoryDataSource menjadi DirectoryData

  • Class DirectoryDataSource: diubah menjadi DirectoryData.
  • Kelas opsi sekarang lebih mudah digunakan.
  • Semua contoh dengan Input dan Output diperbarui.

Contoh Penggunaan

Contoh ini menunjukkan cara mengekspor nilai Form ke file TSV dan mengatur properti.

// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();

// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));

// Set output Directory path
options.AddOutput(new DirectoryData("path_to_output_directory"));

// Perform the process
PdfConverter.Convert(options);

Mengubah properti Delimiter untuk Feature ExtractFormDataToDsvOptions

Kesalahan ketik pada kata‑kata telah diperbaiki.

Contoh Penggunaan

Contoh ini menunjukkan cara mengekspor nilai Form ke file TSV dan mengatur properti.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions();

// Set Delimiter
options.Delimiter = '\t';

// Add Field Names to result
options.AddFieldName = true;

// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));

// Set output file path
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));

// Perform the process
PdfExtractor.Extract(options);

Membuat halaman produk untuk “PDF Manager” di situs ini

https://products.documentize.com/pdf-manager/

Membuat halaman produk untuk “PDF Form” di situs ini

https://products.documentize.com/pdf-form/

Memperbaiki Masalah

  • Memperbaiki masalah di mana Image to PDF menyebabkan pengecualian Out of Memory.
  • Memperbaiki masalah di mana pembuatan Table of Contents menghasilkan hasil yang tidak tepat.
  • Memperbaiki masalah di mana properti OptimizeResources UnembedFonts memicu pengecualian.
  • Memperbaiki masalah di mana PDF ke HTML tidak menerapkan font dengan benar saat dilihat di Internet Explorer.
  • Memperbaiki masalah di mana PDF ke HTML menghasilkan elemen yang salah tempat dan simbol pemformatan.
  • Memperbaiki masalah di mana proses konversi PDF ke PDF/A mengalami kegagalan (hang).
  • Memperbaiki masalah di mana PDF ke PDF/A menghapus bidang formulir dan nilainya.
  • Memperbaiki masalah di mana output PDF ke PDF/A tidak sesuai dengan PDF/A_1a.
  • Memperbaiki masalah di mana output PDF ke PDF/A tidak sesuai dengan PDF/A_2b.
  • Memperbaiki masalah di mana output PDF ke PDF/A-3A gagal pada pemeriksaan kepatuhan Preflight.
  • Memperbaiki masalah di mana output PDF ke PDF/A-3B gagal pada pemeriksaan kepatuhan Preflight.
7 Sep 2026

v26.2

Fitur yang Ditingkatkan: Ekstrak Properti untuk PDF Extractor

  • Class Extractor: dapat mengekstrak metadata baru dari dokumen PDF.
  • Class PdfProperties: menambahkan properti: FileName, Created, Modified, Application, PdfProducer.

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Properti (FileName, Title, Author, Subject, Keywords, Created, Modified, Application, PDF Producer, Number of Pages) dari file PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var filename = pdfProperties.FileName;
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;
var application = pdfProperties.Application;
var pdfProducer = pdfProperties.PdfProducer;
var numberOfPages = pdfProperties.NumberOfPages;

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Properti (Title, Author, Subject, Keywords, Created, Modified, Application, PDF Producer, Number of Pages) dari aliran PDF.

// Create ExtractPropertiesOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;
var application = pdfProperties.Application;
var pdfProducer = pdfProperties.PdfProducer;
var numberOfPages = pdfProperties.NumberOfPages;

Fitur yang Ditingkatkan: Ekstrak Teks untuk PDF Extractor

  • Bekerja dengan ekstraksi teks dan parameter ekstraksi kini lebih mudah: Anda dapat menentukan data input dan mendapatkan hasil dengan lebih sederhana dibanding sebelumnya.
  • Class ExtractTextOptions: mengimplementasikan IHaveInput. Gunakan hanya 1 data input. Tipe Data yang Diizinkan: File dan Stream.
  • Method Extract(ExtractTextOptions options): mengembalikan string dengan hasil.
  • Object ResultContainer: dihapus dari ExtractTextOptions.

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak konten Teks dari file PDF.

// Create ExtractTextOptions object to set input file path
var options = new ExtractTextOptions("path_to_your_pdf_file.pdf");
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak konten Teks dari aliran PDF.

// Create ExtractTextOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractTextOptions(stream);
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak konten Teks dokumen PDF dengan TextFormattingMode.

// Create ExtractTextOptions object to set input file path and TextFormattingMode
var options = new ExtractTextOptions("path_to_your_pdf_file.pdf", TextFormattingMode.Pure);
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Teks dari file PDF dengan gaya paling singkat.

// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(new ExtractTextOptions("path_to_your_pdf_file.pdf", TextFormattingMode.Pure));

Bug yang Diperbaiki

  • Konversi file Jpeg2000 ke PDF gagal
  • Masalah penggabungan PDF
  • Pengubahan ukuran halaman PDF menghasilkan output kosong
  • PDF ke HTML: Warna sorotan terlihat tetapi teks tidak muncul
  • PDF ke HTML: Output HTML yang dihasilkan tidak tepat
  • PDF ke HTML: Teks vertikal di sisi kiri tidak muncul
  • PDF ke HTML: Teks di header menghilang
  • PDF ke HTML: Teks beranotasi transparan tidak terlihat
  • PDF ke PNG: Beberapa karakter Cina gagal dirender
7 Sep 2026

v26.1

Fitur Baru: Ekstrak Properti untuk PDF Extractor

  • Ekstrak Properti PDF: Title, Author, Subject, Keywords, Number of Pages.
  • Class PdfExtractor: menambahkan metode Extract untuk mengekstrak Properti PDF.
  • Class ExtractPropertiesOptions: Mewakili Opsi Ekstraksi Properti PDF untuk plugin PdfExtractor.
  • Class PdfProperties: Mewakili Properti dan informasi meta dokumen PDF.
  • Interface IHaveInput: Digunakan untuk Opsi dengan satu data input.
  • Class OptionsWithInput: Digunakan untuk Opsi dengan satu data input.
  • Full Free functional. (Fungsionalitas Gratis Penuh.)

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Properti (Title, Author, Subject, Keywords, Number of Pages) dari file PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Properti (Title, Author, Subject, Keywords, Number of Pages) dari stream PDF.

// Create ExtractPropertiesOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak Properti dari file PDF dengan gaya paling singkat.

// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(new ExtractPropertiesOptions("path_to_your_pdf_file.pdf"));

Peningkatan

  • Peningkatan HTML ke PDF mendukung teks alternatif untuk gambar
  • PDF ke PDFA1b compliance (kepatuhan)

Perbaikan Bug

  • Kesalahan terjadi saat mencoba mengoptimalkan file PDF
  • Masalah penjajaran vertikal pada Form Field
  • Masalah tampilan teks Jepang di FormField telah diperbaiki
  • HTML ke PDF – Masalah pemformatan tabel
  • Mengoptimalkan ukuran PDF sebelum konversi PDF ke PDF/A menghasilkan output yang rusak
  • PDF ke DOC – Tabel terrender tidak tepat
  • PDF ke Excel – Masalah pemformatan file output
  • PDF ke HTML – ArgumentException selama konversi
  • Konversi PDF ke HTML kehilangan beberapa tautan
  • Teks hilang saat mengonversi PDF ke HTML
7 Sep 2026

v25.12

Plugin PDF Form Baru

  • Class PdfForm: berisi semua fungsi plugin: FormFlattener, FormExporter. Juga memungkinkan Anda menghapus dan mengambil field.
  • Class FormFlattener: akan segera dihapus, gunakan PdfForm.
  • Class FormFlattenerOptions: diubah nama menjadi Class FlattenFieldsOptions.
  • Class GetFieldNamesOptions: memungkinkan pengaturan opsi untuk mendapatkan nama‑nama field.
  • Class RemoveFieldsOptions: memungkinkan pengaturan opsi untuk menghapus field.
  • Lihat The New Plugin Architecture.

Contoh Penggunaan:

Contoh ini menunjukkan cara Flatten field dalam file PDF.

// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Flatten(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mendapatkan Names field dari file PDF.

var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekspor nilai Form ke file CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfForm.Extract(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara menghapus field dari file PDF.

// Create RemoveFieldsOptions object to set instructions
var options = new RemoveFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Remove(options);

Perubahan pada PDF Extractor

  • Method ExtractText: diubah nama menjadi Method Extract.
  • Method ExtractImages: diubah nama menjadi Method Extract.
  • Method ExtractFormData: diubah nama menjadi Method Extract.

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak konten teks dari dokumen PDF.

// Create ExtractTextOptions object to set instructions
var options = new ExtractTextOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak gambar dari dokumen PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekspor nilai Form ke file CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfExtractor.Extract(options);

Peningkatan

  • Class PdfConverterOptions, PdfToXlsOptions - gunakan Class PluginBaseOptions
  • Konversi PDF/A-1b
  • Konversi PDF/A-2b

Perbaikan Bug

  • Memperbaiki masalah format konversi HTML ke PDF
  • Konversi PDF ke HTML kehilangan beberapa tautan
7 Sep 2026

v25.11

Plugin PDF Converter Baru

  • Class PdfConverter: memuat semua fungsi plugin: DocConverter, XlsConverter, HtmlConverter, JpegConverter, PdfAConverter, PngConverter, TiffConverter.
  • Class DocConverter: akan segera dihapus, gunakan PdfConverter.
  • Class XlsConverter: akan segera dihapus, gunakan PdfConverter.
  • Class HtmlConverter: akan segera dihapus, gunakan PdfConverter.
  • Class JpegConverter: akan segera dihapus, gunakan PdfConverter.
  • Class PdfAConverter: akan segera dihapus, gunakan PdfConverter.
  • Class PngConverter: akan segera dihapus, gunakan PdfConverter.
  • Class TiffConverter: akan segera dihapus, gunakan PdfConverter.
  • Class PdfAConvertOptions: diganti nama menjadi Class PdfToPdfAOptions.
  • Lihat Arsitektur Plugin Baru.

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi dokumen PDF ke format Doc.

// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi PDF ke dokumen XLSX.

// Create PdfToXlsOptions object to set instructions
var options = new PdfToXlsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi PDF ke dokumen HTML.

// Create PdfToHtmlOptions object to set output data type as file with embedded resources
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.html"));
//Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi HTML ke dokumen PDF.

// Create HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_input.html"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
//Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi dokumen PDF ke format JPEG.

// Create PdfToJpegOptions object to set instructions
var options = new PdfToJpegOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi dokumen PDF ke format PNG.

// Create PdfToPngOptions object to set instructions
var options = new PdfToPngOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi dokumen PDF ke format TIFF.

// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara mengonversi dokumen PDF ke format PDF/A (PDF/A-3b dalam kasus ini):

// Create the options class to set up the conversion process
var options = new PdfToPdfAOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

// Add the source file
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // replace with your actual file path

// Add the path to save the converted file
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

// Run the conversion
PdfConverter.Convert(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara memvalidasi kepatuhan dokumen PDF terhadap format PDF/A (PDF/A-1a dalam kasus ini):

// Create the options class to set up the validation process
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};

// Add one or more files to be validated
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // replace with your actual file path
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
 // add more files as needed

// Run the validation and get results
var resultContainer = PdfConverter.Validate(options);

// Check the resultContainer.ResultCollection property for validation results for each file:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
    var result = resultContainer.ResultCollection[i];
    var validationResult = (PdfAValidationResult) result.Data;
    var isValid = validationResult.IsValid; // Validation result for the i-th document
}

Plugin PDF Security Baru

  • Class PdfSecurity: memuat semua fungsi plugin: Security, Signature, Timestamp.
  • Class Security: akan segera dihapus, gunakan PdfSecurity.
  • Class Signature: akan segera dihapus, gunakan PdfSecurity.
  • Class Timestamp: akan segera dihapus, gunakan PdfSecurity.
  • Class DecryptionOptions: diganti nama menjadi Class DecryptOptions.
  • Class EncryptionOptions: diganti nama menjadi Class EncryptOptions.
  • Class SignOptions: kini memiliki properti untuk Class Timestamp.
  • Lihat Arsitektur Plugin Baru.

Contoh Penggunaan:

Contoh ini menunjukkan cara Mengenkripsi dokumen PDF.

// Create EncryptOptions object to set instructions
var options = new EncryptOptions("123456", "qwerty");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Encrypt(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Mendekripsi dokumen PDF.

// Create DecryptOptions object to set instructions
var options = new DecryptOptions("123456");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Decrypt(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menandatangani dokumen PDF.

// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menandatangani dokumen PDF dengan Timestamp.

// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Plugin PdfChatGpt terintegrasi ke PdfManager

  • Class PdfChatGpt: akan segera dihapus, gunakan PdfManager.
  • Class PdfChatGptRequestOptions: diganti nama menjadi Class ChatGptRequestOptions.

Opsi baru untuk bekerja dengan ChatGpt

  • Class ChatCompletion: memungkinkan pemeriksaan hasil permintaan.
  • Class Choice: memungkinkan pemeriksaan hasil permintaan.
  • Class Usage: memungkinkan pemeriksaan hasil permintaan.
  • Class ChatGptConsts: memungkinkan penggunaan pengaturan tambahan seperti ModelName, URL API, dan lain‑lain.

Contoh Penggunaan:

Contoh ini menunjukkan cara menggunakan ChatGpt dengan menambahkan pesan ke permintaan.

var options = new ChatGptRequestOptions();
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf")); 
options.ApiKey = "Your API key."; // You need to provide the key to access the API.
options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.

// Add the request messages.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Process the request.
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // The ChatGPT API chat completion object.

Peningkatan

  • PDF ke Gambar – Meningkatkan kinerja konversi
  • PDF ke TIFF – Meningkatkan kecepatan konversi
  • PDF ke Doc – Meningkatkan kinerja

Bug yang Diperbaiki

  • Memperbaiki HTML ke PDF – Masalah pemformatan pada file hasil
  • Memperbaiki masalah kinerja pada konversi PDF ke TIFF
  • Memperbaiki HTML ke PDF – File CSS sebagai Sumber Daya Eksternal tidak diterapkan pada PDF yang dihasilkan.
7 Sep 2026

v25.10

Plugin PDF Extractor Baru

  • Class PdfExtractor: berisi semua fungsi plugin: TextExtractor, ImageExtractor, FormExporter.
  • Class TextExtractor: akan segera dihapus, gunakan PdfExtractor.
  • Class ImageExtractor: akan segera dihapus, gunakan PdfExtractor.
  • Class FormExporter: akan segera dihapus, gunakan PdfExtractor.
  • Class TextExtractorOptions: diubah nama menjadi Class ExtractTextOptions.
  • Class ImageExtractorOptions: diubah nama menjadi Class ExtractImagesOptions.
  • Class FormExportToDsvOptions: diubah nama menjadi Class ExtractFormDataToDsvOptions.
  • Lihat The New Plugin Architecture.

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak teks dari dokumen PDF.

// Buat objek ExtractTextOptions untuk mengatur instruksi
var options = new ExtractTextOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Lakukan proses
var results = PdfExtractor.ExtractText(options);
// Dapatkan teks yang diekstrak dari objek ResultContainer
var textExtracted = results.ResultCollection[0].ToString();

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak teks dari dokumen PDF dengan TextFormattingMode.

// Buat objek ExtractTextOptions untuk mengatur TextFormattingMode
var options = new ExtractTextOptions(TextFormattingMode.Pure);
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Lakukan proses
var results = PdfExtractor.ExtractText(options);
// Dapatkan teks yang diekstrak dari objek ResultContainer
var textExtracted = results.ResultCollection[0].ToString();

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekstrak gambar dari dokumen PDF.

// Buat ExtractImagesOptions untuk mengatur instruksi
var options = new ExtractImagesOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur Direktori output
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Lakukan proses
var results = PdfExtractor.ExtractImages(options);
// Dapatkan jalur hasil gambar
var imageExtracted = results.ResultCollection[0].ToFile();

Contoh Penggunaan:

Contoh ini menunjukkan cara mengekspor nilai Form ke file CSV.

// Buat objek ExtractFormDataToDsvOptions untuk mengatur instruksi
var options = new ExtractFormDataToDsvOptions(',', true);
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Lakukan proses
PdfExtractor.ExtractFormData(options);

Plugin PDF Manager Baru

  • Class PdfManager: berisi semua fungsi plugin: Merger, Optimizer, Splitter, TableGenerator, TocGenerator.
  • Class Merger: akan segera dihapus.
  • Class Optimizer: akan segera dihapus, gunakan PdfManager.
  • Class Splitter: akan segera dihapus, gunakan PdfManager.
  • Class TableGenerator: akan segera dihapus, gunakan PdfManager.
  • Class TocGenerator: akan segera dihapus, gunakan PdfManager.
  • Lihat The New Plugin Architecture.

Contoh Penggunaan:

Contoh ini menunjukkan cara Menggabungkan dua dokumen PDF.

// Buat objek MergeOptions untuk mengatur instruksi
var options = new MergeOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.Merge(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Memisah (Split) dokumen PDF.

// Buat objek SplitOptions untuk mengatur instruksi
var options = new SplitOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Lakukan proses
PdfManager.Split(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Mengoptimalkan dokumen PDF.

// Buat objek OptimizeOptions untuk mengatur instruksi
var options = new OptimizeOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.Optimize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Memutar (Rotate) dokumen PDF.

// Buat objek RotateOptions untuk mengatur instruksi
var options = new RotateOptions();
// Atur Rotasi baru
options.Rotation = Rotation.On90;
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.Rotate(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Mengubah Ukuran (Resize) dokumen PDF.

// Buat objek ResizeOptions untuk mengatur instruksi
var options = new ResizeOptions();
// Atur ukuran halaman baru
options.PageSize = PageSize.A3;
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.Resize(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Mengompres dokumen PDF.

// Buat objek CompressOptions untuk mengatur instruksi
var options = new CompressOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.Compress(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara Menambahkan Tabel ke file PDF.

// Konfigurasi opsi tabel
var options = new TableOptions();
options.InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age")
        .AddRow()
            .AddCell().AddParagraph("Bob")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Sam")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("Sandy")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("Tom")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Jim")
            .AddCell().AddParagraph("27");
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Lakukan proses
PdfManager.AddTable(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara menambahkan Daftar Isi (Table of Contents) ke file PDF.

// Buat objek TocOptions untuk mengatur instruksi
var options = new TocOptions();
// Atur Judul
options.Title = "My Table of Contents";
// Rancang Heading
options.Headings.Add(new TocHeading("Introduction", 2));
options.Headings.Add(new TocHeading("Chapter I", 3));
options.Headings.Add(new TocHeading("Chapter II", 4));
options.Headings.Add(new TocHeading("Chapter III", 5));
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.AddTableOfContents(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara menambahkan Daftar Isi ke PDF dengan menghasilkan bookmark.

// Buat objek TocOptions untuk mengatur instruksi
var options = new TocOptions();
// Atur Judul
options.Title = "My Table of Contents";
// Hasilkan tautan di bookmark
options.GenerateBookmarks = true;
// Rancang Heading
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
PdfManager.AddTableOfContents(options);

Contoh Penggunaan:

Contoh ini menunjukkan cara menambahkan Daftar Isi ke PDF dan menyimpannya sebagai stream.

// Buat objek TocOptions untuk mengatur instruksi
var options = new TocOptions();
// Atur Judul
options.Title = "My Table of Contents";
// Rancang Heading
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur stream output 
var outputStream = new MemoryStream();
options.AddOutput(new StreamDataSource(outputStream));
options.CloseOutputStreams = false;
// Lakukan proses
PdfManager.AddTableOfContents(options);

Peningkatan Kemudahan Penggunaan TableGenerator

  • Class TableGenerator: bersifat statis dan tidak memerlukan konstruktor.
  • Class TableGenerator: ditandai sebagai Obsolete. Gunakan PdfManager sebagai gantinya.

Peningkatan Kemudahan Penggunaan PdfChatGpt

  • Class PdfChatGpt: bersifat statis dan tidak memerlukan konstruktor.
  • Class PdfChatGptRequestOptions: menambahkan properti CancellationToken (dipindahkan dari PdfChatGpt).

Contoh Penggunaan:

Contoh ini menunjukkan cara menggunakan plugin PdfChatGpt dengan menambahkan pesan ke dalam permintaan.

var options = new PdfChatGptRequestOptions();
options.AddOutput(new FileDataSource("PdfChatGPT_output.pdf")); // Tambahkan jalur file output.
options.ApiKey = "Your API key."; // Anda harus menyediakan kunci untuk mengakses API.
options.MaxTokens = 1000; // Jumlah token maksimum yang akan dihasilkan dalam chat completion.
// untuk membatalkan
// var cancelTokenSource = new CancellationTokenSource();
// var cToken = cancelTokenSource.Token;
// options.CancellationToken = cToken;

// Tambahkan pesan permintaan.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Proses permintaan.
await PdfChatGpt.ProcessAsync(options);

Perbaikan Bug

  • Memperbaiki metadata konversi html ke pdf
  • Memperbaiki masalah pemformatan teks dan skala gambar pada PDF ke PDF/A_3b
  • Memperbaiki laporan error pada PDF/A yang dihasilkan saat pencetakan
  • Memperbaiki gambar yang dihasilkan pada PDF ke HTML yang memiliki latar belakang
  • Memperbaiki karakter China yang muncul sebagai kotak pada HTML ke PDF
  • Memperbaiki font khusus Base64 yang tidak dihormati pada HTML ke PDF
  • Memperbaiki CSS bidang formulir yang tidak diterapkan pada HTML ke PDF
  • Memperbaiki grafik yang tidak dirender dengan benar pada HTML ke PDF
  • Memperbaiki karakter khusus yang tidak ditampilkan pada HTML ke PDF
7 Sep 2026

v25.9

Peningkatan kegunaan DocConverter dan penambahan mode ekstra

  • Class DocConverter: bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Class PdfToDocOptions: menambahkan properti “Mode” yang memungkinkan Anda menyesuaikan proses konversi.
  • Enum DocConversionMode: memungkinkan Anda menyesuaikan proses konversi pdf‑doc. Nilai‑nilainya:
    • TextBox: Mode ini cepat dan cocok untuk mempertahankan tampilan asli file PDF secara maksimal, tetapi kemampuan mengedit dokumen hasil dapat terbatas. Setiap blok teks yang dikelompokkan secara visual dalam file PDF asli diubah menjadi textbox dalam dokumen hasil.
    • Flow: Mode pengenalan penuh, mesin melakukan pengelompokan dan analisis multi‑level untuk mengembalikan maksud penulis dokumen asli serta menghasilkan dokumen yang dapat diedit secara maksimal.

Contoh Penggunaan:

// The example demonstrates how to convert PDF document to Doc format.
// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
... (code unchanged)

Contoh Penggunaan:

// The example demonstrates how to convert PDF document to Doc format with setting Mode.
// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
... (code unchanged)

Peningkatan kegunaan PdfAConverter

Class PdfAConverter: bersifat statis dan tidak memerlukan penggunaan konstruktor.

Contoh Penggunaan:

// The example demonstrates how to convert the PDF document in a PDF/A format (PDF/A-3b in this case):
// Create the options class to set up the conversion process
var options = new PdfAConvertOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};
... (code unchanged)

Contoh Penggunaan:

// The example demonstrates how to validate the PDF document conformance to PDF/A format (PDF/A-1a in this case):
// Create the options class to set up the validation process
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};
... (code unchanged)

Peningkatan kegunaan Timestamp

Class Timestamp: bersifat statis dan tidak memerlukan penggunaan konstruktor.

Contoh Penggunaan:

// The example demonstrates how to add Timestamp to the document.
// Create AddTimestampOptions object to set instructions
var options = new AddTimestampOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file", "timestamp_server_url");
... (code unchanged)

Dokumentasi yang diperbarui

Contoh diperbarui, ditambahkan contoh tambahan:

  • Informasi tentang lisensi dan Evaluasi
  • Halaman produk
  • PDF Table Generator
  • PDF TOC Generator
  • PDF Timestamp Adder
  • PDF/A Converter
  • PDF Image Extractor
  • PDF Text Extractor
  • PDF to XLS Converter
  • PDF to HTML Converter

Bug yang Diperbaiki

  • Memperbaiki masalah dengan HTML ke PDF
  • Memperbaiki masalah dengan PDF ke PDF/A-2B
  • Meningkatkan PDF ke JPEG: beberapa karakter teks yang dihasilkan menjadi kotak
  • Memperbaiki render PDF ke TIFF
  • Memperbaiki pengecualian tak terduga pada PDF ke JPEG
7 Sep 2026

v25.8

Peningkatan kegunaan JpegConverter

Class JpegConverter: bersifat statis dan tidak memerlukan penggunaan konstruktor.

Contoh Penggunaan:

// Contoh ini menunjukkan cara mengonversi dokumen PDF ke format JPEG.
// Buat objek PdfToJpegOptions untuk mengatur instruksi
var options = new PdfToJpegOptions();
// Tambahkan path file input
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Tetapkan path direktori output
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Lakukan prosesnya
JpegConverter.Process(options);

Peningkatan kegunaan PngConverter

Class PngConverter: bersifat statis dan tidak memerlukan penggunaan konstruktor.

Contoh Penggunaan:

// Contoh ini menunjukkan cara mengonversi dokumen PDF ke format PNG.
// Buat objek PdfToPngOptions untuk mengatur instruksi
var options = new PdfToPngOptions();
// Tambahkan path file input
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Tetapkan path direktori output
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Lakukan prosesnya
PngConverter.Process(options);

Peningkatan kegunaan XlsConverter

  • Class XlsConverter: bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Class XlsConverter: deskripsi telah diperbaiki.

Contoh Penggunaan:

// Contoh ini menunjukkan cara mengonversi PDF ke dokumen XLSX.
// Buat objek PdfToXlsOptions untuk mengatur instruksi
var options = new PdfToXlsOptions();
// Tambahkan path file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Tetapkan path file output
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Lakukan prosesnya
XlsConverter.Process(options);

Peningkatan kegunaan Signature

  • Class Signature: bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Class Signature: deskripsi telah diperbaiki.
  • Class Signature: antarmuka IPlugin dihapus.

Contoh Penggunaan:

// Contoh ini menunjukkan cara menandatangani dokumen PDF.
// Buat objek SignOptions untuk mengatur instruksi
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Tambahkan path file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Tetapkan path file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan prosesnya
Signature.Process(options);

Konstruktor PdfToHtmlOptions yang dimodifikasi

Konstruktor dan argumen telah dioptimalkan.

Tanda evaluasi TextExtractor yang dimodifikasi

Teks tanda evaluasi telah diubah.

Dokumentasi yang diperbarui

Contoh-contoh diperbarui, ditambahkan contoh ekstra:

  • PDF ke JPEG Converter
  • PDF ke PNG Converter
  • PDF ke TIFF Converter
  • PDF Form Flattener
  • HTML Converter
  • PDF Security
  • PDF Optimizer
  • PDF Merger
  • PDF Splitter

Bug yang Diperbaiki

  • Memperbaiki masalah dengan Anotasi
  • Memperbaiki masalah setelah mengubah ukuran
  • Memperbaiki transformasi Nama Font pada PDF ke PDF/A
  • Memperbaiki PDF ke DOCX – Spasi ditambahkan di header, serta masalah lainnya
  • Memperbaiki HTML ke PDF – Latar belakang PNG transparan
  • Memperbaiki PDF terkompresi – Meningkatkan kompatibilitas dengan Adobe Acrobat
7 Sep 2026

v25.7

Peningkatan kegunaan Text Extractor

  • Class TextExtractor: bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Class TextExtractor: perilaku yang ditingkatkan saat berjalan dalam mode evaluasi. Tidak ada pengecualian untuk dokumen dengan lebih dari 4 halaman.
  • Class TextExtractor: memperbaiki masalah pada metode Process.
  • Class PdfExtractorOptions: dihapus.
  • Class TextExtractorOptions: direfaktor.
  • Enum TextFormattingMode: diubah nama dan ditingkatkan.

Contoh Penggunaan

// Contoh ini menunjukkan cara mengekstrak konten teks dari dokumen PDF.
// Buat objek TextExtractorOptions untuk menetapkan instruksi
var options = new TextExtractorOptions(TextFormattingMode.Pure);
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Lakukan proses
var results = TextExtractor.Process(options);
// Dapatkan teks yang diekstrak dari objek ResultContainer
var textExtracted = results.ResultCollection[0].ToString();

Peningkatan kegunaan Html Converter

  • Class HtmlConverter: bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Class HtmlConverter: memperbaiki masalah pada metode Process.
  • Class HtmlConverter: menghapus logika IDisposable.
  • Class PdfConverterOptions: dihapus.

Contoh Penggunaan

// Contoh ini menunjukkan cara mengonversi PDF ke dokumen HTML.
// Buat objek PdfToHtmlOptions untuk mengatur tipe data output sebagai file dengan sumber daya tersemat
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Tetapkan jalur file output
options.AddOutput(new FileDataSource("path_to_output.html"));
// Lakukan proses
HtmlConverter.Process(options);

// Contoh ini menunjukkan cara mengonversi HTML ke dokumen PDF.
// Buat HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_input.html"));
// Tetapkan jalur file output
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Lakukan proses
HtmlConverter.Process(options);

Peningkatan kegunaan Image Extractor

  • Class ImageExtractor: bersifat statis dan tidak memerlukan penggunaan konstruktor.

Contoh Penggunaan

// Contoh ini menunjukkan cara mengekstrak gambar dari dokumen PDF.
// Buat ImageExtractorOptions untuk menetapkan instruksi
var options = new ImageExtractorOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Tetapkan jalur direktori output
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Lakukan proses
var results = ImageExtractor.Process(options);
// Dapatkan jalur ke hasil gambar
var imageExtracted = results.ResultCollection[0].ToFile();

Perbaikan Minor

  • Perbaikan internal.
  • Memperbaiki contoh dan petunjuk pada Tiff Converter.
  • Memperkecil durasi optimasi halaman.
  • Memperbaiki: output gambar yang salah pada konversi PDF ke PNG.
  • Memperbaiki: karakter Cina tidak tampil dengan benar saat konversi PDF ke PNG.
  • Meningkatkan: kinerja selama konversi PDF ke HTML.
7 Sep 2026

v25.6

Peningkatan kegunaan Tiff Converter

  • Class PdfToTiffOptions: Menambahkan parameter tambahan untuk konversi - Compression.
  • Class PdfToTiffOptions: Menambahkan parameter tambahan untuk konversi - ColorDepth.
  • Class TiffConverter bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Contoh utama yang lebih baik.

Contoh Penggunaan:

// Contoh ini menunjukkan cara mengonversi dokumen PDF ke format TIFF.
// Membuat objek PdfToTiffOptions untuk mengatur instruksi
var options = new PdfToTiffOptions();
// Menambahkan path file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Menetapkan path direktori output
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Menjalankan proses
TiffConverter.Process(options);

// Contoh ini menunjukkan cara mengonversi dokumen PDF ke format TIFF dengan parameter tambahan.
// Membuat objek PdfToTiffOptions untuk mengatur instruksi
var options = new PdfToTiffOptions();
// Menambahkan path file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Menetapkan path direktori output
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Parameter opsional
options.PageList = new List<int> { 1, 3 };
options.MultiPage = true;
options.OutputResolution = 400;
options.Compression = TiffCompression.RLE;
options.ColorDepth = TiffColorDepth.Format24bpp;
// Menjalankan proses
TiffConverter.Process(options);

Perbaikan Kecil

  • Perbaikan internal.
7 Sep 2026

v25.5

Menambahkan Plugin Baru: Form Exporter

  • Class FormExporter: Mewakili plugin Documentize.FormExporter yang digunakan untuk Mengekspor nilai Formulir dokumen PDF ke file DSV atau CSV
  • Class FormExportToDsvOptions: Mewakili opsi untuk Mengekspor nilai dokumen PDF ke file DSV atau CSV melalui plugin Documentize.FormExporter.

Contoh Penggunaan:

// Contoh ini menunjukkan cara Mengekspor nilai Formulir ke file CSV.
// Buat objek FormExportToDsvOptions untuk mengatur instruksi
var options = new FormExportToDsvOptions(',', true);
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
 // Lakukan proses
FormExporter.Process(options);

Meningkatkan kegunaan Security

  • Kelas bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Contoh utama yang ditingkatkan.

Contoh Penggunaan:

// Contoh ini menunjukkan cara mengenkripsi dokumen PDF.
// Buat objek EncryptionOptions untuk mengatur instruksi
var options = new EncryptionOptions("123456", "qwerty");
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
Security.Process(options);

// Contoh ini menunjukkan cara mendekripsi dokumen PDF.
// Buat objek DecryptionOptions untuk mengatur instruksi
var options = new DecryptionOptions("123456");
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lakukan proses
Security.Process(options);

Perbaikan Kecil

  • Petunjuk kelas dan lisensi yang ditingkatkan.
7 Sep 2026

v25.4

Peningkatan kegunaan Optimizer

  • Kelas bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Contoh utama yang ditingkatkan.
  • Menambahkan contoh tambahan.

Contoh Penggunaan:

// Contoh ini menunjukkan cara Mengoptimalkan dokumen PDF.
// Buat objek OptimizeOptions untuk mengatur instruksi
var options = new OptimizeOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Jalankan proses
Optimizer.Process(options);

// Contoh ini menunjukkan cara Memutar dokumen PDF.
// Buat objek RotateOptions untuk mengatur instruksi
var options = new RotateOptions();
// Atur Rotasi baru
options.Rotation = Rotation.On90;
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Jalankan proses
Optimizer.Process(options);

// Contoh ini menunjukkan cara Mengubah Ukuran dokumen PDF.
// Buat objek ResizeOptions untuk mengatur instruksi
var options = new ResizeOptions();
// Atur Ukuran Halaman baru
options.PageSize = PageSize.A3;
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Jalankan proses
Optimizer.Process(options);

// Contoh ini menunjukkan cara Mengompres dokumen PDF.
// Buat objek CompressOptions untuk mengatur instruksi
var options = new CompressOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Jalankan proses
Optimizer.Process(options);

Peningkatan kegunaan Plugin Splitter

  • Kelas bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Contoh utama yang ditingkatkan.

Contoh Penggunaan:

// Contoh ini menunjukkan cara Membagi dokumen PDF.
// Buat objek SplitOptions untuk mengatur instruksi
var options = new SplitOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Jalankan proses
Splitter.Process(options);

Peningkatan kegunaan Plugin Merger

  • Kelas bersifat statis dan tidak memerlukan penggunaan konstruktor.
  • Contoh utama yang ditingkatkan.

Contoh Penggunaan:

// Contoh ini menunjukkan cara Menggabungkan dua dokumen PDF.
// Buat objek MergeOptions untuk mengatur instruksi
var options = new MergeOptions();
// Tambahkan jalur file input
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Atur jalur file output
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Jalankan proses
Merger.Process(options);

Perbaikan Kecil

  • Petunjuk kelas yang ditingkatkan.
7 Sep 2026

v25.3

Menambahkan Plugin Baru: Form Flattener

  • Class FormFlattener: Mewakili plugin Documentize.FormFlattener yang digunakan untuk meratakan field dalam dokumen PDF.
  • Class FormFlattenerOptions: Mewakili opsi untuk Meratakan Field dalam dokumen oleh plugin Documentize.FormFlattener.

Contoh Penggunaan:

// The example demonstrates how to Flatten fields in PDF file.
// Create FormFlattenerOptions object to set instructions
var options = new FormFlattenerOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Optional parameter for skip the field with name "Surname".
options.SkipFields.Add("Surname");
// Perform the process
FormFlattener.Process(options);

// The example demonstrates how to Get Field Names from PDF file.
var fieldNames = FormFlattener.GetFieldNames("path_to_your_pdf_file.pdf");

Perbaikan Kecil

  • Petunjuk kelas dan contoh yang ditingkatkan.
7 Sep 2026

v25.2

Menambahkan Plugin Baru: TOC Generator

  • Class TocGenerator: Mewakili plugin Documentize.TocGenerator. Digunakan untuk menambahkan Daftar Isi ke dokumen PDF.
  • Class TocOptions: Mewakili opsi untuk menambahkan Daftar Isi ke dokumen dengan plugin Documentize.TocGenerator.
  • Class TocHeading: Mewakili opsi untuk Judul atau Heading Daftar Isi ke dokumen dengan plugin Documentize.TocGenerator.

Contoh Penggunaan:

// The example demonstrates how to add Table of Contents to PDF file.
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Generate links in bookmarks
options.GenerateBookmarks = true;
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
TocGenerator.Process(options);

Perbaikan Kecil

  • Petunjuk kelas dan contoh yang ditingkatkan.
  • Watermark yang diperbarui.
  • Konversi PDF ke XSLX yang ditingkatkan.
  • Konversi PDF ke PDF/A-1a yang ditingkatkan.
7 Sep 2026

v25.1

Plugin yang Ditingkatkan: ImageExtractor

  • Menambahkan Output Collection ke ImageExtractorOptions.
  • Menambahkan dukungan untuk banyak Input pada ImageExtractorOptions.
  • Memperbaiki aliran keluaran yang tertutup.

Contoh Penggunaan:

// create ImageExtractor object to extract images
var plugin = new ImageExtractor();
// create ImageExtractorOptions
var opt = new ImageExtractorOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output directory
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform extraction process
var resultContainer = plugin.Process(opt);
// get the image from the ResultContainer object
var imageExtracted = resultContainer.ResultCollection[0].ToFile();

Perbaikan Minor

  • Meningkatkan petunjuk kelas dan contoh.
  • Validasi tanda tangan PDF.
  • Meningkatkan dukungan karakter Tionghoa.
7 Sep 2026

v24.12

Menambahkan Plugin Baru: PDF ke PNG Converter

  • Class PngConverter: Mewakili plugin Documentize.PngConverter. Digunakan untuk mengonversi dokumen PDF ke format PNG.
  • Class PdfToPngOptions: Mewakili opsi konversi PDF ke PNG untuk plugin Documentize.PngConverter.

Contoh Penggunaan:

// create PngConverter
var plugin = new PngConverter();
// create PdfToPngOptions object to set instructions
var opt = new PdfToPngOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform the process
plugin.Process(opt);

Menambahkan Plugin Baru: PDF ke TIFF Converter

  • Class TiffConverter: Mewakili plugin Documentize.TiffConverter. Digunakan untuk mengonversi dokumen PDF ke format TIFF.
  • Class PdfToTiffOptions: Mewakili opsi konversi PDF ke TIFF untuk plugin Documentize.TiffConverter.

Contoh Penggunaan:

// create TiffConverter
var plugin = new TiffConverter();
// create PdfToTiffOptions object to set instructions
var opt = new PdfToTiffOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform the process
plugin.Process(opt);

Menambahkan Plugin Baru: PDF Table Generator

  • Class TableGenerator: Mewakili plugin Documentize.TableGenerator. Digunakan untuk menambahkan tabel ke dokumen PDF.
  • Class TableBuilder: Kelas yang mewakili pembuat tabel pada halaman PDF.
  • Class TableRowBuilder: Kelas yang mewakili pembuat baris tabel.
  • Class TableCellBuilder: Kelas yang mewakili pembuat sel tabel.

Contoh Penggunaan:

// create TableGenerator
var plugin = new TableGenerator();
// create TableOptions object to set instructions
TableOptions opt = new TableOptions().InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age")
        .AddRow()
            .AddCell().AddParagraph("Bob")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Sam")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("Sandy")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("Tom")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Jim")
            .AddCell().AddParagraph("27");
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// perform the process
plugin.Process(opt);

Mengganti Nama Kelas PdfDoc menjadi DocConverter

  • Class DocConverter: Mewakili plugin Documentize.DocConverter. Digunakan untuk mengonversi dokumen PDF ke format DOC/DOCX.

Contoh Penggunaan:

// create DocConverter
var plugin = new DocConverter();
// create PdfToDocOptions object to set instructions
var opt = new PdfToDocOptions();
// add input file path
opt.AddInput(new FileDataSource(inputPath));
// set output file path
opt.AddOutput(new FileDataSource(outputPath));
// perform the process
plugin.Process(opt);
7 Sep 2026

v24.11

Plugin Baru yang Ditambahkan: PDF ke JPEG Converter

  • Tujuan: Kelas JpegConverter dirancang untuk mengonversi dokumen PDF menjadi format JPEG, memudahkan pengguna dalam menangani dan membagikan gambar yang diambil dari PDF.
  • Konstruktor:
    • JpegConverter(): Menginisialisasi sebuah instance baru dari konverter JPEG.

Contoh Penggunaan:

var plugin = new JpegConverter();
var opt = new PdfToJpegOptions();
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
plugin.Process(opt);
  • Metode:
    • Process(PdfToJpegOptions options): Memulai proses konversi JPEG menggunakan opsi yang ditentukan.

Kelas DirectoryDataSource yang Ditambahkan

  • Tujuan: Kelas DirectoryDataSource memungkinkan pengguna mengelola data direktori untuk operasi memuat dan menyimpan dalam plugin.
  • Konstruktor:
    • DirectoryDataSource(string path): Menginisialisasi sebuah objek data direktori baru dengan jalur yang ditentukan.

Contoh Penggunaan:

var directorySource = new DirectoryDataSource("path_to_your_directory");
  • Properti:
    • DataType: Mengambil jenis sumber data.
    • Path: Mendapatkan jalur direktori data saat ini.

Kelas PdfToJpegOptions yang Ditambahkan

  • Tujuan: Kelas ini berisi opsi untuk mengonfigurasi proses konversi JPEG, memungkinkan pengguna menentukan resolusi, daftar halaman, dan kualitas gambar.
  • Konstruktor:
    • PdfToJpegOptions(): Menginisialisasi sebuah instance opsi baru untuk konverter JPEG.

Properti:

  • OutputResolution: Menentukan resolusi gambar JPEG yang dihasilkan.
  • PageList: Daftar halaman yang akan dikonversi dari PDF.
  • Quality: Menetapkan kualitas output JPEG.
7 Sep 2026

v24.10

Menambahkan Plugin Baru: PDF/A Converter

  • Fitur konversi PDF/A baru telah diperkenalkan, memungkinkan pengguna dengan mudah mengonversi file PDF standar menjadi dokumen yang mematuhi PDF/A.

Contoh Penggunaan:

var options = new PdfAConvertOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

var plugin = new PdfAConverter();
plugin.Process(options);

Perbaikan Bug

  • Memperbaiki masalah terkait kelas FileResult yang menghasilkan jalur output yang salah.
  • Menyelesaikan bug kecil yang memengaruhi HtmlConverter saat menangani file besar.

Peningkatan

  • Meningkatkan kinerja PdfExtractor dan ImageExtractor untuk waktu pemrosesan yang lebih cepat.
  • Memperbarui kelas RotateOptions untuk mendukung sudut rotasi tambahan.
7 Sep 2026

v24.9

Dirilis

 Indonesia