Как работать с операциями файлов PDF в Java
Объединение PDF-файлов
Используйте PdfFileEditor.concatenate() для объединения нескольких PDF-файлов в один выходной файл. Передайте массив путей к входным файлам и целевой путь вывода:
PdfFileEditor editor = new PdfFileEditor();
String[] inputs = {"part1.pdf", "part2.pdf", "part3.pdf"};
editor.concatenate(inputs, "merged.pdf");Извлечение диапазона страниц
Извлеките непрерывный диапазон страниц, указав номера начальной и конечной страниц (нумерация с 1). Извлечённые страницы записываются в новый файл:
PdfFileEditor editor = new PdfFileEditor();
// Extract pages 2 through 5 (1-indexed)
editor.extract("source.pdf", 2, 5, "extracted.pdf");Разделение на отдельные страницы
Разделите документ так, чтобы каждая страница стала отдельным файлом. Каталог вывода должен существовать до вызова этого метода:
PdfFileEditor editor = new PdfFileEditor();
editor.splitToPages("document.pdf", "output_dir/");Изменение размера содержимого страницы
Масштабировать содержимое в пределах существующих границ страницы, используя ContentsResizeParameters. Укажите левый отступ, ширину содержимого, правый отступ, верхний отступ, высоту содержимого и нижний отступ в процентах — они должны в сумме давать 100% по каждому измерению:
try (Document doc = new Document("input.pdf")) {
PdfFileEditor editor = new PdfFileEditor();
ContentsResizeParameters params = new ContentsResizeParameters(
ContentsResizeValue.percents(10), // left margin
ContentsResizeValue.percents(80), // content width
ContentsResizeValue.percents(10), // right margin
ContentsResizeValue.percents(10), // top margin
ContentsResizeValue.percents(80), // content height
ContentsResizeValue.percents(10) // bottom margin
);
editor.resizeContents(doc, params);
doc.save("resized.pdf");
}Создание буклета
Упорядочить страницы в порядке печати буклета, чтобы документ печатался правильно после складывания. Это переупорядочивает и правильно сочетает страницы для двусторонней печати:
PdfFileEditor editor = new PdfFileEditor();
editor.makeBooklet("input.pdf", "booklet.pdf");