Användningsfall

Användningsfall

Denna guide demonstrerar verkliga användningsfall för Aspose.PDF FOSS för Java, inklusive batchdokumentgenerering, filsammanfogning, säker distribution, insamling av formulärdata och PDF/A arkivering. Aspose.PDF FOSS för Java producerar PDF-utdata (endast export).

Batch PDF-generering

Generera flera PDF-dokument från data i en loop, lägg till en sida per post och spara varje i en separat fil. Detta mönster är användbart för fakturagenerering, utskrift av certifikat och produktion av kontoutdrag:

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-sammanslagningspipeline

Kombinera månatliga rapport-PDF:er till ett enda årsslutsdokument med PdfFileEditor.concatenate(). Skicka en array med inmatningsfilvägar och en utdataväg:

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

Aktivera diskbuffering med setUseDiskBuffer(true) för stora filuppsättningar:

editor.setUseDiskBuffer(true);

Säker dokumentdistribution

Kryptera ett dokument med ett användarlösenord och ett ägarlösenord innan distribution. Användarlösenordet krävs för att öppna filen; ägarlösenordet styr behörigheter såsom utskrift:

try (PdfFileSecurity security = new PdfFileSecurity()) {
    security.setInputFile("report.pdf");
    security.setOutputFile("report-secured.pdf");
    security.encryptFile("userPass", "ownerPass",
        DocumentPrivilege.getForbidAll(), KeySize.x128);
}

Insamling av formulärdata

Läs in inlämnade formulärfältvärden från en ifylld PDF. Iterera formulärfälten och skriv ut det fullständiga namnet och det aktuella värdet för varje fält:

try (Document doc = new Document("submitted-form.pdf")) {
    Form form = doc.getForm();
    for (WidgetAnnotation field : form.getFields()) {
        System.out.println(field.getFullName() + " = " + field.getValue());
    }
}

Detta är användbart för att bearbeta ifyllda ansökningsformulär utan att behöva en separat server för formulärinlämning.

PDF/A Långtidsarkivering

Konvertera standarddokument till PDF/A-1b för regulatorisk eller juridisk arkivering. Document.convert() tillämpar PDF/A valideringsregler och skriver en överensstämmelserapport. Resultatet är en fristående PDF/A-fil som uppfyller ISO 19005-kraven:

try (Document doc = new Document("input.pdf")) {
    doc.convert("pdfalog.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
    doc.save("archived.pdf");
}

Se även

 Svenska