本地和 heroku 上的不同输出 wkhtmltopdf

Different output wkhtmltopdf local and on heroku

在我的 Macbook 上,我安装了 wkhtmltopdf,当我安装 wkhtmltopdf -V 时,我得到:

wkhtmltopdf 0.12.2.1 (with patched qt)

当我将 Rails 应用程序部署到 Heroku 时,PDF 呈现不同。所以我用 heroku run "wkhtmltopdf -V" 检查了 Heroku 上的版本,但这给了我:

bash: wkhtmltopdf: command not found.

PDF 本身在 Heroku 上呈现良好,所以我猜一定安装了 wkhtmltopdf?我按照这些说明创建了一个构建包,但在请求版本时没有任何变化:

https://elements.heroku.com/buildpacks/rafaelp/heroku-buildpack-wkhtmltopdf

Gemfile 我有这个:

group :development do
  gem 'wkhtmltopdf-binary-edge', '~> 0.12.2.1'
end

那么,如何在 Heroku 上正确安装 wkhtmltopdf 并确保版本与我的 Macbook 上的版本相同?

您可能在此处看到您在开发中使用的 gem 中捆绑的二进制文件与另一个二进制文件之间的版本冲突。

您应该在开发和 heroku (homebrew/apt-get + buildpack) 中手动管理您的 wkhtmltopdf 二进制文件,或者使用 gem 在两种环境中都包含二进制文件。不要混合使用两者,因为您会得到不一致的结果。

就个人而言,我在 heroku 上使用这个 buildpack 并使用 brew 在本地安装开发所需的版本。