Сценарии использования
В этом руководстве показаны реальные случаи использования Aspose.PDF FOSS для 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 Пип-лайн слияния
Объединить файлы PDF месячных отчетов в один документ на конец года с использованием: PdfFileEditor.concatenate().Передать массив путей ввода файлов и выводных:
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/Долгосрочное архивирование
Конвертировать стандартные документы в формат PDF/A-1b для регуляторного или юридического архивирования. Document.convert() применяет правила проверки PDF/A и составляет отчет о соответствии. Результатом является самостоятельный файл PDF/A, соответствующий требованиям ISO 19005:
try (Document doc = new Document("input.pdf")) {
doc.convert("pdfalog.xml", PdfFormat.PDF_A_1B, ConvertErrorAction.Delete);
doc.save("archived.pdf");
}