Cara Mengonversi PDF ke Buku Kerja Excel yang Dapat Diedit di Java
Panduan ini menunjukkan cara mengubah PDF menjadi workbook yang benar-benar dapat Anda edit, bukan sekadar ekspor datar. Anda akan mengonversi PDF ke XLSX dengan ExcelSaveOptions, menyesuaikan ekspor sehingga tabel tertata rapi pada jumlah sheet yang wajar, dan mengonversi workbook yang telah diedit kembali ke PDF dengan ExcelLoadOptions.
Mengonversi PDF ke Workbook Excel Dasar
Document.save dengan SaveFormat.Xlsx melakukan konversi sederhana: teks dan konten mirip tabel pada setiap halaman ditempatkan ke dalam worksheet masing-masing.
import org.aspose.pdf.Document;
import org.aspose.pdf.SaveFormat;
try (Document doc = new Document("report.pdf")) {
doc.save("report.xlsx", SaveFormat.Xlsx); // SaveFormat.Excel is an alias
}Sesuaikan Ekspor untuk Spreadsheet yang Lebih Bersih
Ekspor satu sheet per halaman sering bukan yang diinginkan pengguna spreadsheet. ExcelSaveOptions mengendalikan penggabungan worksheet, tata letak kolom, dan heuristik pemulihan tabel untuk PDF yang tidak memiliki struktur tabel bertag:
import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelSaveOptions;
try (Document doc = new Document("report.pdf")) {
ExcelSaveOptions options = new ExcelSaveOptions();
options.setFormat(ExcelSaveOptions.ExcelFormat.XLSX); // default
options.setMinimizeTheNumberOfWorksheets(true); // merge pages onto fewer sheets
options.setInsertBlankColumnAtFirst(false); // no leading spacer column
options.setUniformWorksheets(false); // allow per-sheet column widths
options.setStructuralHeuristics(true); // recover tables on untagged PDFs
options.setSuppressRunningHeadersFooters(true); // drop repeated page furniture
doc.save("report.xlsx", options);
}setMinimizeTheNumberOfWorksheets(true) adalah satu-satunya opsi yang paling mengubah bentuk output: tanpa opsi ini, laporan 20 halaman menghasilkan 20 worksheet.
Konversi Workbook Excel Kembali ke PDF
Setelah peninjau mengedit workbook, kembalikan ke bentuk PDF dengan memuatnya menggunakan ExcelLoadOptions dan menyimpan dokumen yang dihasilkan:
import org.aspose.pdf.Document;
import org.aspose.pdf.ExcelLoadOptions;
try (Document doc = new Document("book.xlsx", new ExcelLoadOptions())) {
doc.save("book.pdf");
}