4

I've got little problem with wicked_pdf footer render.

Here is my render method:

def invoice
    render pdf: "#{@order.number}.pdf",
           footer: { html: { template: "admin/orders/invoice_footer.html" } },
           margin: { bottom: 25 }
end

PDF render works OK, but there is no footer template. I tried different margins in wicked settings, but with no success.

Palo Delinčák
  • 687
  • 1
  • 7
  • 13

2 Answers2

3

Just had this same issue, the problem seemed to be that my wkhtmltopdf install did not generate the footers as requested.

The version I had was installed via the Ubuntu repository, I un-installed this and downloaded a pre-built version as described here and now it works fine:

https://github.com/mileszs/wicked_pdf/wiki/Getting-Started-Installing-wkhtmltopdf

Ginty
  • 3,483
  • 20
  • 24
  • 2
    Thanks! I'm on OS X, so I did it this way - installed [this wkhtmltopdf](http://code.google.com/p/wkhtmltopdf/downloads/detail?name=wkhtmltopdf.dmg&can=2&q=) and after `cd /usr/local/bin && ln -s /Applications/wkhtmltopdf.app/Contents/MacOS/wkhtmltopdf wkhtmltopdf`. – Palo Delinčák Oct 01 '12 at 11:41
3

I did run into the same problem and it was a problem with the partial not being rendered.

So this answer https://stackoverflow.com/a/19323701/784318 did work for me:

So I changed my code from this:

options = {
    header: {html: {template: 'shared/_header', layout: nil}},
}

To this:

options = {
    header: {content: render_to_string('shared/_header', layout: nil)},
}
Community
  • 1
  • 1
Besi
  • 22,579
  • 24
  • 131
  • 223
  • Interesting. This worked for me. Using the `html:` option would work randomly for me, but using `content:` seems to work all the time now. – akaspick May 01 '20 at 01:56