Авторский канал по разработке на Java.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!
Cотрудничество: @energy_c
Post #1381
1.73K
Рендерим страницы в PNG из PDF!
Иногда нужно превратить документ в набор картинок. Java справляется с этим с библиотекой
Подключаем зависимость (
Открываем
Рендерим первую страницу с нужным
Проходим по всем страницам и сохраняем каждую в отдельный файл:
🔥 Подходит для генерации обложек, поиска по миниатюрам и веб-превью.
👉 Java Ready | #практика
Иногда нужно превратить документ в набор картинок. Java справляется с этим с библиотекой
PDFBox которая рендерит страницы в BufferedImage.Подключаем зависимость (
Gradle) для рендера PDF в изображения:implementation "org.apache.pdfbox:pdfbox:3.0.2"
Открываем
PDF и создаём рендерер для страниц:var pdf = org.apache.pdfbox.pdmodel.PDDocument.load(java.nio.file.Files.readAllBytes(
java.nio.file.Path.of("input.pdf")));
var renderer = new org.apache.pdfbox.rendering.PDFRenderer(pdf);
Рендерим первую страницу с нужным
DPI и сохраняем в PNG:float dpi = 200f;
var img = renderer.renderImageWithDPI(0, dpi);
javax.imageio.ImageIO.write(img, "png", java.nio.file.Path.of("page-1.png").toFile());
Проходим по всем страницам и сохраняем каждую в отдельный файл:
for (int i = 0; i < pdf.getNumberOfPages(); i++) {
var bi = renderer.renderImageWithDPI(i, dpi);
javax.imageio.ImageIO.write(bi, "png", java.nio.file.Path.of("page-" + (i+1) + ".png").toFile());
}
pdf.close();🔥 Подходит для генерации обложек, поиска по миниатюрам и веб-превью.
👉 Java Ready | #практика
- 🔥 9
- ❤ 5
- 👍 4





















