【发布时间】:2016-12-24 14:27:20
【问题描述】:
我正在使用wickedpdf gem 从html 代码生成pdf invoice。
宝石:
gem 'wicked_pdf'
gem "wkhtmltopdf-binary"
gemfile.lock
wicked_pdf (1.0.6)
wkhtmltopdf-binary (0.9.9.3)
在控制器中:
def show_pdf_invoice
respond_to do |format|
format.html { render :layout => "pdf.pdf.erb" }
format.pdf do
render pdf: "show_pdf_invoice", :layout => 'pdf.pdf.erb'
#render :pdf => "pdf"#, :layout => 'pdf.html.erb'
end
end
end
在views/invoices/show_pdf_invoice.pdf.erb
<img id="image" src="https://www.google.co.in/logos/doodles/2016/holidays-2016-day-2-6356741311692800-scta.png" alt="logo" />
<%= wicked_pdf_image_tag 'https://www.google.co.in/logos/doodles/2016/holidays-2016-day-2-6356741311692800-scta.png' %>
pdf 正在生成。但是图像没有显示。代替图像的空盒子来了。找不到问题。
【问题讨论】:
-
我也遇到了同样的问题,我的问题是通过删除
https为http来解决的。你试过这个吗? -
它的工作。将 https 更改为 http 后。但是对于来自 amazon s3 的动态图像,我该如何解决这个问题?
-
您可以使用
gsub,如:gsub("https", "http") -
将其添加为答案。
-
@John 哇哦,那是
wkhtmltopdf-binary提供的wkhtmltopdf的真正旧版本。我建议您尝试更新版本,也许您不必将 https 替换为 http;但请注意,您应该对渲染的 pdf 文件进行目视检查,因为该项目在过去几年中发生了很大变化。
标签: ruby-on-rails image amazon-web-services wicked-pdf