从本地计算机

时间:2016-04-28 19:26:14

标签: java image pdf pdf-generation pdfbox

我一直在使用JPEG文件生成PDF并在顶部添加徽标。 PDF中的图像在我的本地计算机(OS X)上显示正常。一旦我将文件发送到其他任何地方,图像将不再出现。我使用java和PDFBox生成PDF。

PDPageContentStream contentStream = ...;
PDDocument document = ...;
PDImageXObject image = PDImageXObject.createFromFile("image.jpg", document);
contentStream.drawImage(image, 50, 700, 250, 67);

1 个答案:

答案 0 :(得分:0)

从1.8.11升级到2.0.0后,我设法通过更改图像添加到PDF的方式来解决问题。

PDPageContentStream contentStream = ...;
PDDocument document = ...;
InputStream imageStream = this.getClass().getClassLoader().getResourceAsStream("image.jpg");
PDImageXObject image = JPEGFactory.createFromStream(document,imageStream);
contentStream.drawImage(image, 50, 700, 250, 67);

关键似乎是使用:

JPEGFactory.createFromStream()

而不是:

PDImageXObject.createFromFile()