使用 wkhtmlpdf 时遇到问题 gem

Trouble using wkhtmlpdf gem

我在我的机器上使用 wkhtmlpdf gem 时遇到问题。 OS - 佐林OS。这是我在 rails 服务器上尝试下载或查看 pdf 文件时遇到的错误 -

Error: PDF could not be generated! Command Error: /home/my-user/.rvm/gems/ruby-3.0.1@somename/gems/wkhtmltopdf-binary-0.12.6.5/bin/wkhtmltopdf:61:in `<top (required)>': Invalid platform, must be running on Ubuntu 16.04/18.04/20.04 CentOS 6/7/8, Debian 9/10, archlinux amd64, or intel-based Cocoa macOS (missing binary: /home/my-user/.rvm/gems/ruby-3.0.1@somename/gems/wkhtmltopdf-binary-0.12.6.5/bin/wkhtmltopdf_zorin_16_amd64). (RuntimeError)

我尝试按照此命令尝试解决我在 GitHub issue 上为 wkhtmltopdf_binary_gem 找到的问题。但这也解决不了。

wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo apt -f install

使用命令 type wkhtmltopdf 我得到 wkhtmltopdf is /home/mu-user/.rvm/gems/ruby-3.0.1@somename/bin/wkhtmltopdf

好像是平台的问题。 根据您的 OS,它正在尝试搜索 wkhtmltopdf_zorin_16_amd64 的二进制文件,而 gem 没有。

最好的解决办法是尝试:

  1. 创建一个符号链接,在您链接到问题的 GitHub 问题中提到 - here

    ln wkhtmltopdf_ubuntu_20.04_amd64.gz wkhtmltopdf_zorin_16_amd64.gz # Not tested. Give it a try
    
  2. website 安装支持的 wkhtmltopdf 或从源构建并在生成 PDF 时使用 wkhtmltopdf 选项传递路径

    def show
      respond_to do |format|
        format.pdf do
        render pdf:                            'file_name',
               template:                       'articles/show',
               wkhtmltopdf:                    '/usr/local/bin/wkhtmltopdf' # path to binary
      end
    end