사용 사례

사용 사례

이 가이드는 Aspose.PDF FOSS for Java의 실제 사용 사례를 보여줍니다. 여기에는 배치 문서 생성, 파일 병합, 보안 배포, 양식 데이터 수집 및 PDF/A 아카이빙이 포함됩니다. Aspose.PDF FOSS for Java은 PDF 출력(내보내기 전용)을 생성합니다.

배치 PDF 생성

루프에서 데이터를 사용하여 여러 PDF 문서를 생성하고, 레코드당 페이지를 추가한 뒤 각각을 별도의 파일로 저장합니다. 이 패턴은 청구서 생성, 증명서 인쇄 및 명세서 제작에 유용합니다:

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 병합 파이프라인

PdfFileEditor.concatenate()을(를) 사용하여 월간 보고서 PDF를 하나의 연말 문서로 결합합니다. 입력 파일 경로 배열과 출력 경로를 전달하십시오:

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

대용량 파일 세트를 위해 setUseDiskBuffer(true)으로 디스크 버퍼링을 활성화합니다:

editor.setUseDiskBuffer(true);

보안 문서 배포

배포 전에 문서를 사용자 비밀번호와 소유자 비밀번호로 암호화합니다. 사용자 비밀번호는 파일을 열기 위해 필요하고; 소유자 비밀번호는 인쇄와 같은 권한을 제어합니다:

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

양식 데이터 수집

작성된 PDF에서 제출된 양식 필드 값을 읽습니다. 양식 필드를 순회하면서 각 필드의 전체 이름과 현재 값을 출력합니다:

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

이는 별도의 양식 제출 서버 없이 작성된 신청서를 처리하는 데 유용합니다.

PDF/A 장기 보관

표준 문서를 규제 또는 법적 보관을 위해 PDF/A-1b 로 변환합니다. Document.convert()은 PDF/A 검증 규칙을 적용하고 적합성 보고서를 작성합니다. 결과는 ISO 19005 요구사항을 충족하는 자체 포함된 PDF/A 파일입니다:

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

참조

 한국어