Hasilkan html dari pdf dan nonaktifkan pengelompokan dengan GroupDocs Viewer untuk Java
Dalam banyak proyek Anda perlu menghasilkan html dari pdf sambil menjaga setiap glyph tepat di tempatnya. Ini terutama berlaku untuk skrip kompleks, bahasa kuno, atau dokumen hukum di mana satu karakter yang salah tempat dapat mengubah makna. Dalam tutorial ini kami akan memandu Anda melalui proses lengkap merender PDF ke HTML dengan GroupDocs Viewer untuk Java dan menunjukkan cara menonaktifkan pengelompokan sehingga setiap karakter diperlakukan sebagai elemen independen.

Jawaban Cepat
- Apa yang dilakukan “disable grouping”? Itu memaksa renderer memperlakukan setiap karakter sebagai elemen independen, mempertahankan tata letak yang tepat.
- Opsi API mana yang mengontrol ini?
viewOptions.getPdfOptions().setDisableCharsGrouping(true). - Apakah saya memerlukan lisensi? Versi percobaan dapat digunakan untuk pengujian, tetapi lisensi penuh diperlukan untuk produksi.
- Bisakah saya menghasilkan html dari pdf sekaligus? Ya—gunakan
HtmlViewOptionsuntuk membuat output HTML sambil menonaktifkan pengelompokan. - Apakah fitur ini terbatas pada PDF? Ini terutama untuk PDF, tetapi viewer mendukung banyak format lain.
Apa itu menghasilkan html dari pdf?
generate html from pdf menggambarkan proses mengonversi dokumen PDF menjadi sekumpulan halaman HTML yang mempertahankan tata letak, font, dan gambar asli. Konversi ini memungkinkan tampilan berbasis web yang mudah, pengindeksan, dan interaksi tanpa memerlukan plugin PDF.
Mengapa menggunakan GroupDocs Viewer untuk Java?
GroupDocs.Viewer untuk Java mendukung lebih dari 100 format input dan dapat merender PDF hingga 500 halaman tanpa memuat seluruh file ke dalam memori. Library memproses setiap halaman secara streaming, yang mengurangi penggunaan heap hingga 70 % dibandingkan dengan pemuatan dokumen penuh. Kemampuan terukur ini menjadikannya pilihan yang andal untuk pipeline dokumen berskala besar dan kelas perusahaan.
Pendahuluan
Saat bekerja dengan dokumen PDF, presisi dalam rendering sangat penting—terutama ketika menangani struktur teks kompleks seperti hieroglif atau bahasa yang memerlukan representasi karakter yang tepat. Fitur “Character Grouping” sering menyebabkan masalah dengan mengelompokkan karakter secara tidak tepat, yang mengakibatkan interpretasi konten dokumen yang keliru. Hal ini dapat menjadi masalah khususnya bagi pengguna yang membutuhkan replikasi tepat tata letak teks dokumen mereka.
GroupDocs.Viewer for Java adalah perpustakaan sisi‑server yang merender lebih dari 100 format dokumen ke HTML, gambar, dan PDF, memberikan kesetiaan pixel‑perfect.
Prasyarat
- Perpustakaan & dependensi: Anda memerlukan GroupDocs.Viewer untuk Java versi 25.2 atau lebih baru.
- Pengaturan lingkungan: Instal Java Development Kit (JDK) dan konfigurasikan IDE Anda untuk proyek Maven.
- Prasyarat pengetahuan: Pemrograman Java dasar, penanganan sistem file, dan familiaritas dengan Maven.
Cara menghasilkan html dari pdf dengan GroupDocs Viewer
Menghasilkan html dari pdf adalah proses dua langkah: mengonfigurasi viewer, lalu merender dokumen. Kuncinya adalah mematikan pengelompokan karakter sebelum rendering sehingga output HTML mencerminkan tata letak PDF asli karakter demi karakter.
Menyiapkan GroupDocs.Viewer untuk Java
Instalasi via Maven
Add the following dependency to your pom.xml:
<repositories>
<repository>
<id>repository.groupdocs.com</id>
<name>GroupDocs Repository</name>
<url>https://releases.groupdocs.com/viewer/java/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-viewer</artifactId>
<version>25.2</version>
</dependency>
</dependencies>
Akuisisi Lisensi
To fully utilize GroupDocs.Viewer, consider acquiring a license:
- Uji coba gratis: Mulailah dengan uji coba gratis untuk menguji fitur.
- Lisensi sementara: Ajukan lisensi sementara jika Anda membutuhkan lebih banyak waktu.
- Pembelian: Untuk proyek jangka panjang, disarankan membeli lisensi.
Inisialisasi dan pengaturan dasar
HtmlViewOptions mengonfigurasi format output dan opsi untuk merender dokumen ke HTML.
import com.groupdocs.viewer.Viewer;
import com.groupdocs.viewer.options.HtmlViewOptions;
import java.nio.file.Path;
// Initialize the GroupDocs Viewer
Path outputDirectory = Utils.getOutputDirectoryPath("DisableCharactersGrouping");
Path pageFilePathFormat = outputDirectory.resolve("page_{0}.html");
HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources(pageFilePathFormat);
viewOptions.getPdfOptions().setDisableCharsGrouping(true);
try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/HIEROGLYPHS_PDF")) {
viewer.view(viewOptions);
}
Panduan Implementasi
Fitur: nonaktifkan pengelompokan karakter
Di bawah ini kami menjelaskan setiap baris contoh sehingga Anda dapat memahami mengapa kami melakukannya dan bagaimana hal itu berkontribusi pada menghasilkan html dari pdf tanpa penggabungan karakter yang tidak diinginkan.
Langkah 1: tentukan direktori output
Path outputDirectory = Utils.getOutputDirectoryPath("DisableCharactersGrouping");
Mengapa? Ini memastikan file HTML yang dirender disimpan di folder khusus, memudahkan pencarian dan pengelolaan nanti.
Langkah 2: konfigurasikan format jalur file
Path pageFilePathFormat = outputDirectory.resolve("page_{0}.html");
Mengapa? Menggunakan placeholder ({0}) memungkinkan viewer membuat file HTML terpisah untuk setiap halaman PDF, menjaga output tetap terorganisir.
Langkah 3: inisialisasi opsi tampilan HTML
HtmlViewOptions viewOptions = HtmlViewOptions.forEmbeddedResources(pageFilePathFormat);
Mengapa? Sumber daya tersemat menggabungkan gambar, font, dan CSS langsung dengan setiap halaman HTML, yang ideal untuk viewer berbasis web atau platform e‑learning.
Langkah 4: nonaktifkan pengelompokan karakter
setDisableCharsGrouping(true) disables the default behavior of grouping adjacent characters, ensuring each glyph is rendered separately.
viewOptions.getPdfOptions().setDisableCharsGrouping(true);
Mengapa? Ini adalah baris penting yang memberi tahu mesin rendering untuk tidak menggabungkan karakter berdekatan, menjamin bahwa HTML yang dihasilkan mencerminkan penempatan glyph yang tepat dari PDF sumber.
Langkah 5: render dokumen
Viewer is the primary class that opens a document and provides rendering capabilities.
try (Viewer viewer = new Viewer("YOUR_DOCUMENT_DIRECTORY/HIEROGLYPHS_PDF")) {
viewer.view(viewOptions);
}
Mengapa? Membungkus Viewer dalam blok try‑with‑resources memastikan semua sumber daya native dilepaskan secara otomatis, mencegah kebocoran memori pada aplikasi yang berjalan lama.
Bagaimana menonaktifkan pengelompokan karakter meningkatkan kesetiaan HTML?
Menonaktifkan pengelompokan karakter memaksa mesin menghasilkan setiap glyph sebagai elemen HTML terpisah, yang mempertahankan spasi, ligatur, dan diakritik asli persis seperti yang muncul di PDF sumber. Hal ini menghasilkan representasi web yang setia, penting untuk skrip di mana urutan dan spasi karakter menyampaikan makna, seperti Arab, Devanagari, atau teks hieroglif kuno.
Apa implikasi kinerja dari menonaktifkan pengelompokan?
Mematikan pengelompokan sedikit meningkatkan siklus CPU karena renderer memproses setiap karakter secara individual. Dalam praktiknya, overhead berada di bawah 5 % untuk PDF 100 halaman tipikal dan tetap di bawah 12 % untuk dokumen lebih dari 500 halaman, asalkan heap JVM diatur dengan tepat (mis., -Xmx2g). Trade‑off ini berharga ketika kesetiaan visual yang tepat diperlukan.
Masalah umum dan solusi
- FileNotFoundException – Periksa kembali jalur yang Anda berikan ke
new Viewer(...). Gunakan jalur absolut atauPath.of(...)untuk kejelasan. - Izin menulis – Pastikan direktori output dapat ditulisi oleh proses Java; di Linux Anda mungkin perlu menyesuaikan izin folder (
chmod 775). - Versi tidak cocok – Opsi
setDisableCharsGroupingtersedia mulai versi 25.2. Verifikasi bahwapom.xmlAnda mencerminkan versi yang benar.
Aplikasi praktis
- Pelestarian bahasa – Ideal untuk merender dokumen dalam bahasa Mandarin, Jepang, Arab, atau skrip kuno di mana spasi karakter membawa makna.
- Dokumen hukum & keuangan – Menjamin replikasi teks yang tepat untuk dokumen dengan kepatuhan tinggi.
- Sumber daya edukasi – Sempurna untuk buku teks yang mencakup diagram kompleks, anotasi, atau konten multibahasa.
Pertimbangan kinerja
- Optimalkan penggunaan sumber daya – PDF besar dapat mengonsumsi memori signifikan. Proses halaman dalam batch dan buang instansi
Viewerdengan cepat. - Manajemen memori Java – Sesuaikan heap JVM (
-Xmx2gatau lebih tinggi) jika Anda memperkirakan memproses PDF ratusan halaman. - Rendering paralel – Untuk konversi massal, buat thread terpisah masing‑masing dengan instansi
Viewersendiri untuk memanfaatkan CPU multi‑core.
Pertanyaan yang sering diajukan
Q: Mengapa saya perlu menonaktifkan pengelompokan karakter?
A: Menonaktifkan pengelompokan mencegah renderer menggabungkan karakter yang merupakan glyph terpisah, yang penting untuk skrip di mana spasi dan urutan menyampaikan makna.
Q: Apakah pengaturan setDisableCharsGrouping hanya berlaku untuk output HTML?
A: Tidak, pengaturan ini memengaruhi mesin rendering PDF di bawahnya, sehingga semua format output (HTML, PNG, JPEG, dll.) akan mencerminkan perubahan tersebut.
Q: Bisakah saya menggabungkan pengaturan ini dengan font khusus?
A: Ya—muat font khusus Anda sebelum menginisialisasi Viewer, dan aturan pengelompokan tetap berlaku.
Q: Apakah menonaktifkan pengelompokan memengaruhi kinerja?
A: Sedikit, karena mesin memproses setiap karakter secara individual, tetapi dampaknya minimal untuk kebanyakan dokumen (biasanya di bawah overhead 5 %).
Q: Apakah ada cara untuk mengaktifkan/menonaktifkan pengelompokan per halaman?
A: Saat ini opsi bersifat global per instance PdfOptions; Anda memerlukan instance Viewer terpisah untuk halaman yang berbeda jika memerlukan perilaku campuran.
Sumber daya
- Dokumentasi GroupDocs
- Referensi API
- Unduh GroupDocs Viewer
- Beli Lisensi
- Versi Uji Coba Gratis
- Aplikasi Lisensi Sementara
- Forum Dukungan GroupDocs
Terakhir Diperbarui: 2026-09-05
Diuji Dengan: GroupDocs.Viewer 25.2 untuk Java
Penulis: GroupDocs