Případy použití

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");
}

Viz také:

 Čeština