需要Rails Prawn Pdf宝石建议

时间:2018-08-30 17:11:55

标签: ruby-on-rails ruby wkhtmltopdf prawn

我一直在我的应用程序中使用wkhtmltoppdf生成pdf,因为现在我发现它不支持超过1000页的文件。我有兴趣尝试虾pdf,因为它看起来比其他gem更快。 任何人都可以告诉我们,无论如何,我们都在虾宝石中将html转换为pdf? 如果不像pdfkit和wkhtmltopdf那样,那么是否有任何方法可以调试虾生成的pdf以进行样式设置,例如我们有wkhtmltopdf的方法呢?

1 个答案:

答案 0 :(得分:1)

  

任何人都可以告诉我们,在虾子宝石中,我们可以将html转换为pdf吗?

Prawn不是html到pdf生成器,他们将此指向官方网站http://prawnpdf.org/api-docs/2.0/

  

“大虾不是现在也永远不会是HTML到PDF的一件事   发电机。对于这些需求,请考虑通过以下方式调查FlyingSaucer   JRuby或基于Webkit的工具之一,例如Wicked或PDFKit。我们的确是   具有内联样式的基本支持,但仅限于   功能的一小部分,不适合呈现丰富   HTML文档。”


  

如果不像pdfkit和wkhtmltopdf一样,那么可以通过任何方式调试pdf   虾生成的样式,就像我们有办法wkhtmltopdf一样?

要调试Prawn生成的pdf,我认为最简单的方法是生成一个新的pdf或使您的控制器响应您的pdf:

Prawn::Document.generate("path/to/pdf/example.pdf") do
  pdf.text "Hello"
end

控制器回复pdf:

format.pdf do
  pdf = PdfGenerator.new(@invoice)
  send_data pdf.render, 
    filename: "pdf_test",
    type: 'application/pdf',
    disposition: 'inline'
end

并在每次进行更改时刷新页面。

要测试生成的pdf,pdf-inspector gem是好的。

这些教程可能会帮助您:

https://grzegorowski.com/using-prawn-gem-for-generating-pdfs-in-rails-5/

https://rubyplus.com/articles/3891-PDFs-with-Prawn-in-Rails-5