Menguasai Substitusi Font dengan GroupDocs.Conversion untuk Java

Dalam tutorial komprehensif ini Anda akan menemukan cara mengonversi catatan ke pdf menggunakan GroupDocs.Conversion untuk Java sambil menangani font yang hilang dengan elegan. Kami akan membahas pengaturan Maven, konfigurasi substitusi font, dan strategi fallback sehingga PDF Anda terlihat identik di setiap sistem operasi. Pada akhirnya, Anda akan dapat menyematkan alur konversi ini ke dalam layanan Java apa pun atau pekerjaan batch.

Jawaban Cepat

  • Apa tujuan utama substitusi font? Itu menggantikan font yang tidak tersedia dengan font yang Anda tentukan, menjaga tampilan dokumen tetap konsisten.
  • Perpustakaan mana yang menangani konversi? GroupDocs.Conversion for Java.
  • Apakah saya memerlukan lisensi untuk produksi? Ya – lisensi penuh atau lisensi sementara diperlukan.
  • Bisakah saya mengatur font default untuk kasus yang tidak diketahui? Tentu saja, dengan menggunakan setDefaultFont() di NoteLoadOptions.
  • Apakah ini kompatibel dengan JDK 8 dan yang lebih tinggi? Ya, perpustakaan mendukung Java 8+.

Apa itu “convert note to pdf”?

convert note to pdf adalah proses mengubah format file catatan (misalnya .ONE, .ENEX) menjadi PDF yang dapat dibuka di perangkat apa pun tanpa perangkat lunak khusus.
Konversi ini sering menghadapi masalah font yang hilang karena catatan sumber mungkin merujuk pada font yang tidak terpasang di mesin target. Substitusi font menyelesaikan hal itu dengan memetakan font yang hilang ke font yang tersedia, menjamin kesetiaan visual.

Mengapa Menggunakan GroupDocs.Conversion untuk Java?

GroupDocs.Conversion untuk Java menyediakan penanganan font otomatis untuk lebih dari 50 + format input dan output, dan dapat memproses dokumen ratusan halaman tanpa memuat seluruh file ke memori. Perpustakaan ini menghasilkan output PDF dengan fidelitas tinggi, menggunakan kurang dari 150 MB heap untuk catatan 300 halaman, dan terintegrasi melalui satu dependensi Maven, menjadikannya pilihan siap produksi bagi pengembang Java.

Prasyarat

  • Java Development Kit (JDK) versi 8 atau lebih tinggi.
  • IDE seperti IntelliJ IDEA atau Eclipse.
  • Maven terpasang untuk manajemen dependensi.
  • Pengetahuan dasar tentang Java dan konsep konversi dokumen.

Menyiapkan GroupDocs.Conversion untuk Java

Tambahkan repositori GroupDocs dan dependensi ke pom.xml Anda:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/conversion/java/</url>
   </repository>
</repositories>
<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-conversion</artifactId>
      <version>25.2</version>
   </dependency>
</dependencies>

Akuisisi Lisensi

GroupDocs menawarkan uji coba gratis 30 hari dan lisensi sementara untuk pengujian, atau Anda dapat membeli lisensi penuh untuk penggunaan produksi.

  1. Uji Coba Gratis: Unduh dari di sini.
  2. Lisensi Sementara: Minta satu di tautan ini.
  3. Pembelian: Untuk solusi jangka panjang, beli lisensi di sini.

Cara mengganti font saat Anda convert note to pdf

Untuk mengganti font selama konversi, Anda harus membuat dan mengonfigurasi opsi pemuatan yang memetakan font yang hilang ke pengganti yang tersedia serta menentukan font fallback. Ini memastikan setiap karakter dirender dengan benar meskipun font asli tidak ada di sistem.

Langkah 1: Konfigurasikan Substitusi Font

NoteLoadOptions mengonfigurasi cara file catatan dimuat, termasuk pengaturan substitusi font. Buat objek NoteLoadOptions, tentukan pasangan font yang ingin Anda ganti, dan atur font fallback untuk kasus yang tidak cocok:

import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
import com.groupdocs.conversion.options.load.NoteLoadOptions;
import com.groupdocs.conversion.contracts.FontSubstitute;

// Create font substitution options
NoteLoadOptions loadOptions = new NoteLoadOptions();
List<FontSubstitute> fontSubstitutes = new ArrayList<>();
fontSubstitutes.add(FontSubstitute.create("Tahoma", "Arial")); // Substitute Tahoma with Arial
fontSubstitutes.add(FontSubstitute.create("Times New Roman", "Arial")); // Substitute Times New Roman with Arial
loadOptions.setFontSubstitutes(fontSubstitutes);

// Set the default font for unhandled substitutions
defaultFont = "YOUR_DOCUMENT_DIRECTORY/terminal-grotesque_open.otf";
  • NoteLoadOptions – Kelas NoteLoadOptions adalah titik masuk untuk mengonfigurasi cara file catatan dimuat, termasuk pengaturan substitusi font.
  • FontSubstitute.create()FontSubstitute.create() membangun pemetaan yang memberi tahu konverter font pengganti mana yang digunakan ketika font asli tidak ada.
  • setDefaultFont()setDefaultFont() menentukan font fallback yang diterapkan mesin ketika tidak ada pemetaan eksplisit, memastikan tidak ada karakter yang tidak ter-render.

Langkah 2: Konversi Dokumen ke PDF

Converter adalah komponen inti yang melakukan konversi menggunakan opsi pemuatan yang diberikan. Berikan opsi pemuatan yang telah dikonfigurasi ke Converter dan jalankan konversi:

// Initialize Converter with specified load options
converter = new Converter("YOUR_DOCUMENT_DIRECTORY/sample_note_document", () -> loadOptions);

// Set PDF conversion options
pdfOptions = new PdfConvertOptions();

// Perform conversion
coder.convert("YOUR_OUTPUT_DIRECTORY/converted_note.pdf", pdfOptions);
  • Converter – Kelas Converter adalah komponen inti GroupDocs yang memuat file sumber menggunakan opsi yang disediakan dan menyiapkannya untuk konversi.
  • convert() – Metode convert() menulis file PDF ke lokasi target, menerapkan semua aturan substitusi font yang Anda definisikan.

Mengonversi Dokumen Catatan ke PDF (tanpa font khusus)

Jika Anda hanya perlu java document to pdf tanpa substitusi khusus, langkah-langkahnya bahkan lebih singkat:

// Initialize Converter for a given document
converter = new Converter("YOUR_DOCUMENT_DIRECTORY/sample_note_document");
pdfOptions = new PdfConvertOptions(); // Configure conversion options
converter.convert("YOUR_OUTPUT_DIRECTORY/converted_note.pdf", pdfOptions);

Aplikasi Praktis

  1. Berbagi Dokumen – Kirim PDF yang tampak identik di Windows, macOS, atau Linux.
  2. Pengarsipan – Jaga fidelitas visual file catatan lama untuk kepatuhan.
  3. Kompatibilitas Lintas Platform – Pastikan setiap pemangku kepentingan melihat font yang sama, terlepas dari jenis huruf yang terpasang.

Kemungkinan Integrasi

Anda dapat menyematkan alur konversi ini ke dalam sistem manajemen konten perusahaan, mikro‑layanan yang memproses unggahan, atau pekerjaan batch yang memigrasi arsip catatan lama ke PDF.

Pertimbangan Kinerja

  • Manajemen Memori – Stream file besar alih-alih memuatnya sepenuhnya ke memori.
  • Caching – Cache file font yang sering digunakan untuk menghindari I/O disk berulang.
  • Praktik Terbaik Java – Optimalkan garbage collector dan gunakan kembali instance Converter bila memungkinkan.

Masalah Umum dan Solusinya

MasalahPenyebab KemungkinanSolusi
Font hilang setelah konversiTidak ada substitusi yang didefinisikan untuk font tersebutTambahkan entri FontSubstitute atau atur font default yang tepat.
NullPointerException pada loadOptionsloadOptions tidak diberikan ke ConverterPastikan Anda menggunakan lambda () -> loadOptions saat membuat Converter.
Konversi lambat untuk file besarMemuat seluruh dokumen ke memoriGunakan API streaming atau tingkatkan ukuran heap JVM secara tepat.

Pertanyaan yang Sering Diajukan

Q: Bisakah saya mengganti beberapa font sekaligus?
A: Ya, tambahkan beberapa entri FontSubstitute ke dalam daftar fontSubstitutes.

Q: Apa yang terjadi jika font default tidak ditemukan?
A: Konversi akan kembali ke font default sistem, yang mungkin berbeda antar platform.

Q: Bagaimana cara memecahkan masalah kesalahan konversi?
A: Verifikasi jalur file, pastikan semua dependensi Maven terresolusi, dan periksa konsol untuk jejak stack.

Q: Apakah GroupDocs.Conversion kompatibel dengan semua versi Java?
A: Ia mendukung JDK 8 dan yang lebih tinggi.

Q: Dapatkah substitusi font digunakan dengan format lain seperti Word atau Excel?
A: Tentu saja – mekanisme FontSubstitute yang sama bekerja untuk banyak tipe dokumen, termasuk DOCX dan XLSX.

Sumber Daya


Terakhir Diperbarui: 2026-07-29
Diuji Dengan: GroupDocs.Conversion 25.2 untuk Java
Penulis: GroupDocs

Tutorial Terkait