mini_magick 在 Rails 应用程序中使用 CarrierWave gem 处理图像时出现问题

Issue using mini_magick to process images with CarrierWave gem in Rails app

我在 Windows 8.1。整整 5 个小时后,我终于在我的 rails 应用程序中设置了 CarrierWave。我必须安装 ImageMagick(运行 convert -version returns "Version: ImageMagick 6.9.8-4 Q16 x64 2017-04-25",所以我知道它已安装)。上传文件按预期工作,一切正常。

下一步是包含 mini_magick,这样我就可以调整大小并制作图像的缩略图版本,因此我取消了 image_uploader.rb 文件中以下行的注释:

  include CarrierWave::MiniMagick

   version :thumb do
     process :resize_to_fit => [200, 100]
   end

然后我将 mini_magick 添加到我的 gemfile 并可以确认它在那里 (运行 bundle install returns "Using mini_magick 4.7.0")。但是现在,每当我上传文件时,都会收到以下错误:

现在我知道它是一个图像,因为它在我尝试使用 MiniMagick 进行操作之前使用相同的文件。肯定安装了 ImageMagick。我找不到关于我的问题的单一参考。我做错了什么?

提前致谢。

编辑:运行 convert -version 列出委托(内置)如下:

Delegates (built-in): bzlib cairo flif freetype jng jp2 jpeg lcms lqr openexr pa ngocairo png ps rsvg tiff webp xml zlib

而且我在该列表中没有看到 jpg。但即使尝试上传 .png 文件,我也会收到同样的错误。

几天没做任何事后,我从头开始this guide。当我到了不同尺寸的图像处理阶段时,我从我的 uploader.rb 中取消了以下代码的注释,并添加了指南中随便提到的 require 语句(我第一次跳过)。

include CarrierWave::MiniMagick
require 'carrierwave/processing/mini_magick'
version :thumb do
 process :resize_to_fit => [600, 450]
end

运行 捆绑安装并继续本教程的其余部分,现在图像已根据需要调整大小。