Escribo una aplicación java que crea un pdf desde cero utilizando la biblioteca pdfbox.
Necesito colocar una imagen jpg en una de las páginas.No se puede agregar una imagen a un PDF usando PDFBox
Estoy usando este código:
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");
Cuando ejecuto el código, se termina con éxito, pero si abro el archivo PDF generado usando Acrobat Reader, la página es completamente blanco y la imagen no es colocado en él.
En su lugar, el texto se coloca correctamente en la página.
¿Alguna pista sobre cómo poner mi imagen en el pdf?
Moviendo la creación de PDJpeg antes de que PDPageContentStream resolviera mi problema, muchas gracias. –
Dah, he estado batallando con este también y esto lo resolvió, gracias. Parece un error en mi libro ... ¡debería al menos dar una advertencia! – berry120
¡Me salvaste! Tnx. Trabajé una hora para descubrir por qué mi imagen no se muestra desde un ByteArrayInputStream ... fue el orden de PDJpeg y PDPageContentStream ... –