即时通讯使用Rails 3.2和wicked_pdf + wkhtmltopdf-binary gem,我试图在pdf中渲染图像,但它不起作用,
我试过了
<%= image_tag "image.png" %>
和
<img src="/assets/images/image.png">
<img src="/public/image.png">
没有成功。
除了图像之外,pdf的其余部分呈现良好状态,我做错了什么?
答案 0 :(得分:6)
wkhtmltopdf需要知道图像文件的完整路径,并且您需要提供相关文件。要么更新它们以使用完整的URL,要么尝试wicked_pdf_image_tag
帮助程序。我没有尝试后一种方法,但它应该解决你正在尝试做的事情。
这里有一个GH issue。
答案 1 :(得分:0)
我以前处理过这个问题。我发现的解决方案是通过这种方式使用请求协议和主机返回映像位置:
%img{src: "#{request.protocol}#{request.host_with_port}#{asset_path('image.png')}" }
我使用的图像标签(%img
)是具有haml语法的图像标签,此处的关键是与html或haml标签无关的图像的路径路由:
"#{request.protocol}#{request.host_with_port}#{asset_path('image.png')}"
wkhtmltopdf就像一个外部代理:需要绝对路径。希望对您有所帮助。