【问题标题】:Wicked pdf not rendering header/footer邪恶的 pdf 不呈现页眉/页脚
【发布时间】:2017-05-25 17:59:38
【问题描述】:

我正在使用wicked_pdf 在我的rails 项目中从html 生成pdf。它正在渲染template,但我无法打印header/footer 部分。下面是我只打印template 部分的代码

render pdf: "pdf_name",
               layout: 'application',
               template: 'reports/show',
               formats: [:html],
               margin: { top: 10, bottom: 10, left: 10, right: 10 },
               disable_javascript: true,
               show_as_html: params[:debug],
               header: {
                 html: { template: 'shared/header' },
                 spacing: 10
               },
               footer: {
                 html: { template: 'shared/footer' },
                 spacing: 30,
                 line: true
               }

如果我尝试使用WickedPdf.new.pdf_from_string render_to_string,它会显示Failed to load PDF document 错误,即使是简单的WickedPdf.new.pdf_from_string('<html><body><h1>Hello There!</h1></body></html>') 也不起作用。

我曾尝试使用render_to_string_with_wicked_pdf, render_with_wicked_pdf,但没有成功。我的 Rails 版本是 3.2.19wicked_pdf gem 版本是 1.1.0wkhtmltopdf 版本是 wkhtmltopdf-0.13.0-alpha-7b36694_linux-trusty-amd64.deb。我也试过用wkhtmltopdf版本0.12.0

我的问题是

  1. 为什么我上面的实现不起作用?
  2. 为什么pdf_from_string 不起作用?

感谢任何形式的帮助。谢谢。

【问题讨论】:

    标签: html ruby-on-rails-3 pdf-generation wkhtmltopdf wicked-pdf


    【解决方案1】:

    使用使用修补过的 qt 构建的 wkhtmltopdf 版本,它可以与页脚和页眉一起正常工作。

    $ wget http://download.gna.org/wkhtmltopdf/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
    $ tar xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
    $ sudo mv wkhtmltox /usr/local/share/
    $ sudo update-alternatives --install /usr/local/bin/wkhtmltopdf wkhtmltopdf /usr/local/share/wkhtmltox/bin/wkhtmltopdf 1005
    

    检查版本:

    $ wkhtmltopdf --version
    

    应该说:

    wkhtmltopdf 0.12.4 (with patched qt)
    

    测试一下:

    $ wkhtmltopdf --footer-center 'footer' http://www.google.com google.pdf
    

    你也可以安装 wkhtmltoimage:

    $ sudo update-alternatives --install /usr/local/bin/wkhtmltoimage wkhtmltoimage /usr/local/share/wkhtmltox/bin/wkhtmltoimage 1005
    

    您可以使用这样的脚本:wkhtmltox installer

    【讨论】:

    • 谢谢,这让我很开心 :)
    • 这是否适用于 highcharts 图形,在我的情况下,图形不显示 qt 修补
    猜你喜欢
    • 2013-06-07
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    • 1970-01-01
    • 2014-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多