如何安装PDFKit? (Rails 3.2.1和PDFKit 0.5.2)

How to install PDFKit? (Rails 3.2.1 and PDFKit 0.5.2)

我正在尝试使用PDFKit。

它看起来相当简单,因此我尝试遵循Ryan's Rails的演员表。

因此我将ruby添加到我的GemFile中,并用以下内容更新了application.rb

1
config.middleware.use"PDFKit::Middleware"

之后,我在Linux上使用以下命令安装了wkhtmltopdf:

1
apt-get install wkhtmltopdf

我确保它可以正常工作:

1
2
3
4
[nicolas@Minto]%wkhtmltopdf www.google.com gogole.pdf
Loading page (1/2)
Printing pages (2/2)                                              
Done

一切看起来都很不错,直到我尝试在自己的页面之一上添加.pdf为止...

该网站永远保持加载状态。当我在控制台中使用Ctrl - C停止服务器时,出现以下错误:

1
2
3
RuntimeError (command failed:"/usr/bin/wkhtmltopdf""--page-size""Letter""--margin-top""0.75in""--margin-right""0.75in""--margin-bottom""0.75in""--margin-left""0.75in""--encoding""UTF-8""--print-media-type""--quiet""-""-"):
  pdfkit (0.5.2) lib/pdfkit/pdfkit.rb:71:in `to_pdf'
  pdfkit (0.5.2) lib/pdfkit/middleware.rb:21:in `call'

我在做什么错?


我们在这里有一个相关的问题:使用PDFKit和wkhtmotopdf

会挂起PDF生成

引用比灵顿的解决方案:

Try removing any javascript include tags from your HTML and see if that at least lets the PDF render. If that works, then you at least have a starting point.

我尝试过,那对我有用。

我认为这与具有相对路径的javascript和样式表之类的资产有关。


我还关注了瑞安(Ryan)的《 Rails》演员表。

PDFkit依赖于wkhtmltopdf.rb。任何大于0.9.9的版本都会导致PDF创建过程在完成之前就挂起,需要按Ctrl-C。我使用OS X 10.6.8,而不是Linux。但是,请尝试:

1
wkhtmltopdf --version

如果> 0.9.9,则回滚到0.9.9。解决了我的问题。花了我几个小时才弄清楚。


好的,

花了几个小时的谷歌搜索,但我终于在另一个stackoverflow问题中找到了解决方案:
pdfkit无法在Rails 3.1

中正确呈现

感谢您的帮助。


我最近使用PDFKit,并使其在我的rails应用程序中工作,并且遇到了类似的问题。
您需要的三个步骤是:

  • 您需要将gem" pdfkit"放入GemFile中。
  • 将config.middleware.use PDFKit :: Middleware放入您已经拥有的application.rb文件中。
  • 尝试将以下代码放入``config / initializers''文件夹下的pdfkit.rb文件中。

    PDFKit.configure做| config |

    config.wkhtmltopdf ='C:\\\\ software \\\\ utilities \\\\ wkhtmltopdf \\\\ wkhtmltopdf.exe'#wkhtmltppdf安装目录的路径

    config.root_url =" http:// localhost"#仅当您的外部主机名在服务器上不可用时使用。

    end