Kasus Penggunaan
Panduan ini menunjukkan kasus penggunaan dunia nyata untuk Aspose.PDF FOSS for Java, termasuk pembuatan dokumen batch, penggabungan file, distribusi aman, koleksi data formulir, dan arsip PDF / A. Aspose.PDF Foss for Jawa menghasilkan output PDF (ekspor-hanya).
Generasi PDF Batch
Generasi beberapa dokumen PDF dari data dalam satu loop, menambahkan halaman per catatan dan menyimpan masing-masing ke file terpisah. Pola ini berguna untuk pembuatan faktur, pencetakan sertifikat, dan produksi pernyataan:
List<ReportData> records = fetchReports();
for (ReportData data : records) {
try (Document doc = new Document()) {
PageCollection pages = doc.getPages();
Page page = pages.add();
doc.save("reports/" + data.getId() + ".pdf");
}
}PDF Pipeline Gabungan
Menggabungkan laporan bulanan PDF ke dalam satu dokumen akhir tahun menggunakan PdfFileEditor.concatenate(). Menerima array jalur input file dan jalan output:
String[] monthly = {
"jan.pdf", "feb.pdf", "mar.pdf", "apr.pdf",
"may.pdf", "jun.pdf", "jul.pdf", "aug.pdf",
"sep.pdf", "oct.pdf", "nov.pdf", "dec.pdf"
};
PdfFileEditor editor = new PdfFileEditor();
editor.concatenate(monthly, "year-end.pdf");Aktifkan penyangga disk dengan: setUseDiskBuffer(true) untuk set file besar:
editor.setUseDiskBuffer(true);Distribusi dokumen yang aman
Enkripsi dokumen dengan kata sandi pengguna dan password pemilik sebelum distribusi. Kata sandi pangguna diperlukan untuk membuka file; kata kunci pemilik mengontrol izin seperti pencetakan:
try (PdfFileSecurity security = new PdfFileSecurity()) {
security.setInputFile("report.pdf");
security.setOutputFile("report-secured.pdf");
security.encryptFile("userPass", "ownerPass",
DocumentPrivilege.getForbidAll(), KeySize.x128);
}Pengumpulan Data Formulir
Baca nilai bidang formulir yang dikirim dari PDF yang diisi. Iterasi kolom formulier dan cetak nama lengkap dan nilai saat ini untuk setiap bidang:
try (Document doc = new Document("submitted-form.pdf")) {
Form form = doc.getForm();
for (WidgetAnnotation field : form.getFields()) {
System.out.println(field.getFullName() + " = " + field.getValue());
}
}Ini berguna untuk memproses formulir aplikasi yang diisi tanpa memerlukan server pengiriman formulier terpisah.
PDF/Arsip jangka panjang
Mengkonversi dokumen standar ke PDF/A-1b untuk arsip peraturan atau hukum. Document.convert() menerapkan aturan validasi PDF/A dan menulis laporan kepatuhan. Hasilnya adalah file PDF/A yang mandiri dan memenuhi persyaratan ISO 19005:
try (Document doc = new Document("input.pdf")) {
doc.convert("pdfalog.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
doc.save("archived.pdf");
}