Я пишу приложение на Java, которое создает PDF-файл с нуля, используя библиотеку pdfbox.
Мне нужно разместить изображение в формате jpg на одной из страниц.
Я использую этот код:
PDDocument document = new PDDocument();
PDPage page = new PDPage(PDPage.PAGE_SIZE_A4);
document.addPage(page);
PDPageContentStream contentStream = new PDPageContentStream(document, page);
/* ... */
/* code to add some text to the page */
/* ... */
InputStream in = new FileInputStream(new File("c:/myimg.jpg"));
PDJpeg img = new PDJpeg(document, in);
contentStream.drawImage(img, 100, 700);
contentStream.close();
document.save("c:/mydoc.pdf");
Когда я запускаю код, он успешно завершается, но если я открываю сгенерированный файл pdf с помощью Acrobat Reader, страница становится полностью белой, и изображение в нее не помещается.
Вместо этого текст правильно размещен на странице.
Есть какие-нибудь подсказки, как поместить мое изображение в PDF?
Похоже, вам не хватает только document.addPage(page)
звонка.
См. Также пример класса ImageToPDF в PDFBox для некоторого примера кода.