fix*_*ain 3 pdf grails war grails-plugin
我正在使用grails渲染插件生成pdf.在开发中,我使用带有src的标记将图像包含在服务器上的图像中.它工作正常,但在部署应用程序时不再适用.图像消失了.
我正在通过一个模板进行渲染,所以当我把这个模板调用到gsp中时,它是可以的(即我看到带有图像的pdf的html版本),在使用renderPdf在我的控制器中调用时没有图像.
仅在部署的应用程序(战争)中,而不是在开发中.
任何提示?
编辑:根据流行的要求这里是代码:
_pdf.gsp文件可以很简单
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head/>
<body>
<img src="path/to/image.jpg"/>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
控制器的相关部分是
def pdf={
renderPdf(template: "/file/pdf", filename: "myfile.pdf")
}
Run Code Online (Sandbox Code Playgroud)
我一直在看这两个令人沮丧的日子,并尝试了很多东西.我的建议是,他们在文档中给出的建议是坚持内嵌图像.我的意思是以字节形式定义图像.你不会后悔,你将确保渲染插件与其他插件如ui-performance和资源一起玩得很好.
首先像这样创建文件对象
def paid = new File(ApplicationHolder.application.parentContext.servletContext.getRealPath("/images/paid.jpg"))
Run Code Online (Sandbox Code Playgroud)
然后将文件的字节传递到模型中
renderPdf(template:invoiceTemplate, model:[paidBytes:paid.bytes])
Run Code Online (Sandbox Code Playgroud)
现在在您的pdf模板中使用以下标记:
<rendering:inlineJpeg bytes="${paidBytes}" />
Run Code Online (Sandbox Code Playgroud)
如果您没有依赖性问题,那么您应该设置.如果您遇到像我这样的依赖性问题并在此处注明,那么请查看您提供的iText版本.
| 归档时间: |
|
| 查看次数: |
4417 次 |
| 最近记录: |