在PDF内部渲染图像,图像未在PDF Viewer 0.1.8中渲染

时间:2014-01-15 10:45:21

标签: itext flying-saucer pdfviewer

请检查更新,因为他们有其他信息...显然将问题定位在特定的pdf客户端但不能以开放的赏金来解决问题...

我使用grails rendering plugin生成pdf。 PDF里面有几张图片,其中“有些”没有输出!

我通过数据uris将图像内联呈现为required by the plugin。这意味着我的所有图像都是这样的:

<img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQECWAJYAAD...">

如果我在普通的html视图中渲染它们,我可以看到图像就好了! 如果我使用相同的插件将模板渲染到JPG / PNG,那么图像再次渲染都很好。

如果我渲染为PDF,那么被octed-stream检索的图像就会被破坏!

类似的东西:

enter image description here

看起来图像开始渲染然后发生了一些事情......

它发生在大尺寸的图像上,也发生在同一图像的缩略图版本上。

任何人都有一些提示,为什么会出现这种情况?

更新

未显示的文件是mime application / octet-stream 的文件 所以显然我可以从文件中检索字节,但是当它们传输用于PDF渲染时,图像不会出现......

又一次更新 该问题似乎与PDF查看器有关。使用基于Linux的PDF查看器(PDF Viewer 0.1.8)并且特定图像被破坏。在所有其他PDF查看器中,我可以测试一切正常。 无法解决问题,因为有一个赏金开放:(对不起,赏金和问题现在似乎毫无意义,但你永远不知道,有人可能知道如何解决这个问题,即使对于PDF Viewer 0.1.8。

2 个答案:

答案 0 :(得分:1)

<img src="data:image/jpg;base64,/9j/4AAQSkZJRgABAQECWAJYAAD...">

对我来说很好。注意缺少的“e”。

答案 1 :(得分:-1)

您可以使用渲染标记:

<rendering:inlineJpeg bytes="${your-image}" />

确保 decodeBase64()您的图片。