我正在尝试使用PDFKit。
看起来相当简单,所以我试图关注Ryan's Rails cast。
所以我将gem添加到我的GemFile并使用:
更新了我的application.rb
config.middleware.use "PDFKit::Middleware"
之后我在linux上安装了wkhtmltopdf:
apt-get install wkhtmltopdf
我确保它有效:
[nicolas@Minto]%wkhtmltopdf www.google.com gogole.pdf
Loading page (1/2)
Printing pages (2/2)
Done
在我尝试在我的一个页面上添加.pdf之前,一切看起来都很好......
网站永远处于加载状态。当我在控制台中使用Ctrl - C
停止服务器时,出现以下错误:
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'
我做错了什么?
答案 0 :(得分:0)
我最近玩过PDFKit并让它在我的rails应用程序中工作并遇到了类似的问题 您需要的三个步骤是:
尝试将以下代码放在'config / initializers'文件夹下的 pdfkit.rb 文件中。
PDFKit.configure do | config |
config.wkhtmltopdf ='C:\ software \ utilities \ wkhtmltopdf \ wkhtmltopdf.exe'#path到你的wkhtmltppdf安装目录
config.root_url =“http:// localhost”#仅在服务器上的外部主机名不可用时使用。
端
答案 1 :(得分:0)
好的,
用了几个小时的谷歌搜索,但我终于在另一个stackoverflow问题中找到了解决方案: pdfkit not rendering correctly in rails 3.1
感谢您的帮助。
答案 2 :(得分:0)
我也跟着Ryan's Rails cast。
PDFkit依赖于wkhtmltopdf.rb。任何版本> 0.9.9导致PDF创建过程在完成之前挂起,需要Ctrl-C。我使用的是OS X 10.6.8,而不是Linux。但是试试:
wkhtmltopdf --version
如果是> 0.9.9,然后回滚到0.9.9。解决了我的问题。花了我几个小时才弄清楚。
答案 3 :(得分:0)
我们在此处遇到相关问题:PDF Generation hangs using PDFKit and wkhtmotopdf
引用解决方案尝试从HTML中删除任何javascript包含标记,看看是否至少让PDF呈现。如果可行,那么至少你有一个起点。
我试过了,这对我有用。
我认为它与javascript和具有相对路径的样式表等资产有关。