Casos d'ús
Aquesta guia demostra casos d’ús del món real per a Aspose.PDF FOSS per Java, incloent la generació de documents en batches, fusió de fitxers, distribució segura, recollida de dades de formulari i arxiu PDF / A. Aspose.PDF L’aplicació FosS for Java produeix sortida PDF (sólo exporta).
Generació de PDF en batxè
Generar múltiples documents PDF a partir de dades en un bucle, afegint una pàgina per registre i guardant cada un en una fichier separat. Aquest patró és útil per la generació de factures, impressió de certificats i producció d’estacions:
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 de fusió
Combinar els informes mensuals en un document de final d’any utilitzant el formulari “PDF” (en anglès) PdfFileEditor.concatenate().Passa una matriu de camins d’entrada i un camí d ’exit:
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");Habilitar el buffer de disc amb: setUseDiskBuffer(true) per a conjunts de fitxers grans:
editor.setUseDiskBuffer(true);Distribució segura de documents
Encripta un document amb una contrasenya d’usuari i una de propietari abans de la distribució. La contraseña d ‘usuari és necessària per obrir el fitxer; la contrasesena del propietaris controla permisos com ara impressió:
try (PdfFileSecurity security = new PdfFileSecurity()) {
security.setInputFile("report.pdf");
security.setOutputFile("report-secured.pdf");
security.encryptFile("userPass", "ownerPass",
DocumentPrivilege.getForbidAll(), KeySize.x128);
}Recopilació de dades del formulari
Llegeix els valors dels camps del formulari enviats des d’un PDF omplert. Itera els camps de la forma i imprimeix el nom complet i el valor actual de cada camp:
try (Document doc = new Document("submitted-form.pdf")) {
Form form = doc.getForm();
for (WidgetAnnotation field : form.getFields()) {
System.out.println(field.getFullName() + " = " + field.getValue());
}
}Això és útil per al tractament de formularis d’aplicació omplits sense necessitat d ‘un servidor separat de presentació de formulari.
PDF/Arxiu a llarg termini
Convertir documents estàndards en PDF/A-1b per a l’arxiu reglamentari o legal. Document.convert() aplica les regles de validació PDF/A i escriu un informe de conformitat. El resultat és un fitxer PDF/A independent que compleix els requisits de la ISO 19005:
try (Document doc = new Document("input.pdf")) {
doc.convert("pdfalog.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
doc.save("archived.pdf");
}