我一直在使用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);
答案 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()