Satu Halaman per Lembar – Excel ke PDF dalam Java, Substitusi Font
Mempertahankan tipografi yang konsisten saat mengonversi spreadsheet Excel menjadi PDF dapat menjadi tantangan, terutama ketika Anda membutuhkan one page per sheet. Tutorial ini menunjukkan cara convert Excel to PDF dalam Java sambil menerapkan satu halaman per lembar dan menggantikan font yang hilang menggunakan GroupDocs.Conversion. Pada akhir tutorial Anda akan memiliki solusi yang dapat diandalkan yang menjaga konsistensi tipografi di seluruh platform dan menyederhanakan alur kerja dokumen.
Jawaban Cepat
- What does “one page per sheet” mean? Setiap worksheet dirender pada satu halaman PDF.
- Which library handles the conversion? GroupDocs.Conversion untuk Java.
- Can I replace missing fonts automatically? Ya, menggunakan fitur FontSubstitute.
- Do I need a license? Lisensi sementara diperlukan untuk fungsi penuh.
- Is this approach suitable for large workbooks? Ya, dengan penyesuaian memori JVM yang tepat.
Prasyarat
Sebelum mengimplementasikan kode, pastikan Anda memiliki hal berikut:
Perpustakaan dan Dependensi yang Diperlukan
Pastikan Anda memiliki perpustakaan GroupDocs.Conversion versi 25.2 atau lebih baru, yang dapat dikelola menggunakan Maven.
Persyaratan Penyiapan Lingkungan
- Java Development Kit (JDK) terpasang di mesin Anda.
- Sebuah IDE seperti IntelliJ IDEA atau Eclipse untuk menulis dan menjalankan kode Java.
Prasyarat Pengetahuan
Pemahaman dasar tentang pemrograman Java, mengelola perpustakaan melalui Maven, dan konsep konversi file akan bermanfaat tetapi tidak mutlak diperlukan.
Sekarang kita siap, mari kita selami implementasinya.
Mengapa Menggunakan GroupDocs.Conversion Java untuk Excel ke PDF?
- One page per sheet rendering menjamin paginasi yang dapat diprediksi.
- Font substitution memastikan PDF terlihat sama di semua sistem, bahkan ketika font asli tidak tersedia.
- Mendukung convert excel to pdf untuk berbagai fitur Excel (grafik, rumus, styling).
- Sepenuhnya dapat diprogram melalui Java, menjadikannya ideal untuk pipeline otomatisasi excel to pdf java.
Menyiapkan GroupDocs.Conversion untuk Java
Konfigurasi Maven
Pertama, tambahkan repositori dan informasi dependensi yang diperlukan ke file 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>
Perolehan Lisensi
Dapatkan lisensi sementara dari GroupDocs untuk akses penuh ke fitur selama periode evaluasi.
Inisialisasi dan Penyiapan Dasar
Dengan Maven terkonfigurasi, inisialisasi GroupDocs.Conversion dalam aplikasi Java Anda:
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
public class ConvertExcelToPDF {
public static void main(String[] args) {
String inputDocument = "sample.xlsx";
String convertedFile = "output.pdf";
// Initialize the Converter object with your document path
Converter converter = new Converter(inputDocument);
PdfConvertOptions options = new PdfConvertOptions();
// Perform the conversion
converter.convert(convertedFile, options);
}
}
Panduan Implementasi – Substitusi Font dengan Satu Halaman per Lembar
Bagian ini membahas konversi file Excel ke PDF sambil menggantikan font. Hal ini memastikan konsistensi visual ketika font asli tidak tersedia.
Langkah 1: Tentukan Jalur Input dan Output
Tentukan jalur file Excel input Anda dan jalur PDF output yang diinginkan:
String inputDocument = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
String convertedFile = "YOUR_OUTPUT_DIRECTORY/ConvertSpreadsheetBySpecifyingFontsubstitution.pdf";
Langkah 2: Siapkan Opsi Pemuatan dengan Substitusi Font
Buat objek SpreadsheetLoadOptions untuk mengonfigurasi pengaturan konversi, dengan menentukan substitusi font:
import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
import com.groupdocs.conversion.contracts.FontSubstitute;
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
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setFontSubstitutes(fontSubstitutes);
Langkah 3: Konfigurasikan Font Default dan One Page per Sheet
Tetapkan font default sebagai cadangan, dan aktifkan opsi one page per sheet untuk menjamin setiap worksheet menempati satu halaman PDF:
loadOptions.setDefaultFont("resources/fonts/Helvetica.ttf");
loadOptions.setOnePagePerSheet(true);
Pro tip: Mengaktifkan
setOnePagePerSheet(true)sangat penting ketika Anda membutuhkan paginasi yang dapat diprediksi untuk laporan atau faktur.
Langkah 4: Inisialisasi Converter dengan Opsi Pemuatan
Berikan opsi pemuatan ke objek Converter Anda:
Converter converter = new Converter(inputDocument, () -> loadOptions);
Langkah 5: Tentukan Opsi Konversi PDF dan Lakukan Konversi
Tentukan format konversi dan jalankan prosesnya:
PdfConvertOptions options = new PdfConvertOptions();
converter.convert(convertedFile, options);
Tips Pemecahan Masalah
- Missing Fonts: Pastikan font substitusi terpasang di sistem Anda atau disertakan dalam aplikasi.
- Incorrect Paths: Verifikasi jalur file untuk dokumen input dan output; jalur relatif harus diresolusikan dari root proyek.
Aplikasi Praktis
Substitusi font dan konversi satu‑halaman‑per‑lembar sangat berharga dalam banyak skenario dunia nyata:
- Business Reporting: Penyajian laporan keuangan yang konsisten di semua platform.
- Legal Documentation: Mempertahankan tampilan dalam PDF yang dibagikan untuk kontrak.
- Academic Publishing: Menstandarisasi font untuk makalah dan deck presentasi.
- Marketing Materials: Brosur atau buletin yang seragam ketika dihasilkan dari spreadsheet.
- Collaboration Tools: Menyederhanakan sistem manajemen dokumen yang mengandalkan pratinjau PDF.
Pertimbangan Kinerja
Untuk mengoptimalkan kinerja saat mengonversi workbook besar:
- Gunakan streaming I/O untuk mengurangi jejak memori.
- Sesuaikan ukuran heap JVM (
-Xmx) berdasarkan ukuran dokumen. - Gunakan kembali satu instance
Converteruntuk konversi batch bila memungkinkan.
Pertanyaan yang Sering Diajukan
Q: What is GroupDocs.Conversion Java used for?
A: Itu adalah perpustakaan untuk mengonversi berbagai format dokumen—termasuk Excel ke PDF—dengan pengaturan yang dapat disesuaikan seperti substitusi font dan one page per sheet.
Q: Can I use GroupDocs.Conversion without purchasing a license?
A: Ya, percobaan gratis atau lisensi sementara memungkinkan Anda menjelajahi semua fitur sebelum berkomitmen pada lisensi berbayar.
Q: How do I handle missing fonts during conversion?
A: Tentukan substitusi menggunakan objek FontSubstitute dalam SpreadsheetLoadOptions; perpustakaan akan menggantikan font yang tidak tersedia secara otomatis.
Q: What are best practices for optimizing Java performance with GroupDocs.Conversion?
A: Manajemen memori yang efisien, konfigurasi JVM yang tepat, dan memproses file dalam stream membantu mempertahankan kinerja tinggi.
Q: Does the “one page per sheet” option affect chart rendering?
A: Tidak, grafik akan diskalakan agar sesuai dengan satu halaman sambil mempertahankan kesetiaan visual.
Kesimpulan
Anda kini memiliki metode lengkap dan siap produksi untuk convert Excel to PDF dalam Java dengan one page per sheet dan font substitution otomatis menggunakan GroupDocs.Conversion. Pendekatan ini menjamin tipografi yang konsisten, paginasi yang dapat diprediksi, dan integrasi yang mulus ke dalam pipeline dokumen otomatis.
Langkah Selanjutnya
- Bereksperimen dengan
PdfConvertOptionstambahan (mis., kepatuhan PDF/A). - Gabungkan solusi ini dengan GroupDocs.Annotation untuk penyuntingan pasca‑konversi.
- Jelajahi format sumber lain (Word, PowerPoint) menggunakan pola yang sama.
Last Updated: 2026-01-15
Tested With: GroupDocs.Conversion 25.2
Author: GroupDocs