4

我安装了pdfkit,甚至还安装了wkhtmltopdf,但是每次尝试创建pdf时都会出现以下错误。

PDFKit::NoExecutableError 
No wkhtmltopdf executable found at bundler: command not found: which
Install missing gem executables with `bundle install`
>> Please install wkhtmltopdf - https://github.com/jdpace/PDFKit/wiki/Installing-WKHTMLTOPDF

我的 Gemfile 有以下内容:

gem 'jquery-rails'
gem 'devise'
gem 'carrierwave'
gem "wkhtmltopdf"
gem 'pdfkit'

我的 application.rb 有以下条目:

config.middleware.use "PDFKit::Middleware", :print_media_type => true

我在这里遗漏了什么吗 - 我已经运行了捆绑安装,但每次尝试创建 pdf 时仍然出现此错误。请帮忙

4

3 回答 3

6

您应该在此处阅读安装自述文件:

https://github.com/jdpace/PDFKit

所以你需要手动安装 wkhtmltopdf:

https://github.com/jdpace/PDFKit/wiki/Installing-WKHTMLTOPDF

或者像这样

gem install wkhtmltopdf-binary

附言

查看which wkhtmltopdf

并创建新文件 config/initializers/pdfkit.rb

PDFKit.configure do |config|
  config.wkhtmltopdf = 'PATH/TO/wkhtmltopdf'
end
于 2012-03-07T08:56:52.010 回答
2

阿里,

我没有看到您提到您使用的是哪个操作系统。我和 Fl00r 都假设它是一个 Linux 系统,所以相应地进行调整。这是我需要做的,以使 PDFKit 与 wkhtmltopdf 一起用于我在 64 位 Ubuntu 12.04 LTS 上运行的 Rails 应用程序。

删除对您wkhtmltopdf的.wkhtmltopdf-binaryGemfile

仅添加gem 'pdfkit', :require => 'pdfkit'到您的 Gemfile

在你的config/initializers/mime_types.rb文件中添加

Mime::Type.register "application/pdf", :pdf

删除任何config/initializers/pdfkit.rb文件

从运行 Rails 应用程序的服务器上卸载 gems

gem uninstall wkhtmltopdf -a
gem uninstall wkhtmltopdf-binary -a

wkhtmltopdf-0.10.0_rc2-static-amd64.tar.bz2这里的项目下载站点下载到您的服务器。最新建议的下载版本中存在一个错误,该错误会阻止用户从生成的 PDF 中选择和复制文本,但此版本没有该错误。此问题在http://code.google.com/p/wkhtmltopdf/issues/detail?id=886中引用

从 tar 存档中提取可执行文件

tar -xvf wkhtmltopdf-0.10.0_rc2-static-amd64.tar.bz2

移动到/usr/local/bin/目录

sudo mv wkhtmltopdf-0.10.0.rc2 /usr/local/bin/

现在设置文件的符号链接,以便以后升级

sudo ln -s /usr/local/bin/wkhtmltopdf-0.10.0.rc2 /usr/local/bin/wkhtmltopdf

设置文件的权限

sudo chmod 755 /usr/local/bin/wkhtmltopdf-0.10.0.rc2

完成所有这些并重新启动服务器后,PDFKit 现在将使用我在服务器上安装的 wkhtmltopdf。

警告:有一次我的 Rails 应用程序开始报告它在路径中找不到 wkhtmltopdf 可执行文件,不知道为什么,因为没有任何改变。重新启动服务器更正了此问题。

于 2012-07-20T20:48:54.873 回答
0

以上都不适合我。我尝试了此处发布的解决方案https://github.com/pdfkit/pdfkit/issues/123

于 2014-08-11T15:01:12.537 回答