我想使用GROVER将应用程序中相同的ERB/HTML页面导出为PDF。它可以工作,但生成的PDF似乎缺少样式和格式,似乎没有处理CSS。
下面是我在控制器中的代码:
html_string = render_to_string(
{
template: 'users/show.html.erb',
locals: { id: params[:id] }
})
pdf = Grover.new(html_string, format: 'A4').to_pdf
respond_to do |format|
format.html
format.pdf do
send_data(pdf, disposition: 'inline', filename: "Show_ID_#{params[:id]}", type: 'application/pdf')
end
end我的问题是,我如何说服GROVER也处理CSS文件?
发布于 2021-07-16 00:55:11
我在没有CSS的情况下呈现我的布局时也遇到了同样的问题。我可以通过在Grover中添加display_url选项来解决这个问题。
在本地开发中,这将是例如:
pdf = Grover.new(html_string, format: 'A4', display_url: "http://localhost:3000").to_pdf您需要根据您的环境更改您的display_url。
如果这不起作用,请确保呈现的html_string实际上包含正确的标记。您可以将html_string呈现为超文本标记语言,以验证是否包含所有标记。
https://stackoverflow.com/questions/67553912
复制相似问题