Případy použití
Tento průvodce ukazuje reálné příklady použití Aspose.PDF FOSS pro Java, včetně hromadné generace dokumentů, slučování souborů, zabezpečené distribuce, sběru dat z formulářů a archivace PDF/A. Aspose.PDF FOSS pro Java vytváří PDF výstup (pouze export).
Hromadná generace PDF
Vygenerujte více PDF dokumentů z dat ve smyčce, přidáním jedné stránky pro každý záznam a uložením každého do samostatného souboru. Tento vzor je užitečný pro generování faktur, tisk certifikátů a tvorbu výpisů:
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");
}
}Pipeline pro sloučení PDF
Slučte měsíční PDF zprávy do jednoho ročního dokumentu pomocí PdfFileEditor.concatenate(). Předávejte pole cest k vstupním souborům a výstupní cestu:
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");Povolte diskové vyrovnávací paměti pomocí setUseDiskBuffer(true) pro velké sady souborů:
editor.setUseDiskBuffer(true);Bezpečná distribuce dokumentů
Zašifrujte dokument pomocí uživatelského hesla a hesla vlastníka před distribucí. Uživatelské heslo je vyžadováno k otevření souboru; heslo vlastníka řídí oprávnění, jako je tisk:
try (PdfFileSecurity security = new PdfFileSecurity()) {
security.setInputFile("report.pdf");
security.setOutputFile("report-secured.pdf");
security.encryptFile("userPass", "ownerPass",
DocumentPrivilege.getForbidAll(), KeySize.x128);
}Sběr dat z formulářů
Přečtěte hodnoty odeslaných polí formuláře z vyplněného PDF. Projděte pole formuláře a vypište úplný název a aktuální hodnotu každého pole:
try (Document doc = new Document("submitted-form.pdf")) {
Form form = doc.getForm();
for (WidgetAnnotation field : form.getFields()) {
System.out.println(field.getFullName() + " = " + field.getValue());
}
}To je užitečné pro zpracování vyplněných žádostních formulářů bez potřeby samostatného serveru pro odesílání formulářů.
PDF/A Dlouhodobé archivování
Převést standardní dokumenty na PDF/A-1b pro regulační nebo právní archivaci. Document.convert() používá validační pravidla PDF/A a vytváří zprávu o shodě. Výsledkem je samostatný soubor PDF/A, který splňuje požadavky ISO 19005:
try (Document doc = new Document("input.pdf")) {
doc.convert("pdfalog.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
doc.save("archived.pdf");
}