我正在使用:
- carrierwave 0.6.0
- rails 3.2.1
- mini_magick 3.4
- ruby 1.9.2p290
在图片上传过程中,我想调整上传图片的大小:
(image_uploader.rb)
process :resize_to_fit => [200, 200]
但是在图片上传后我遇到了错误:
1 error prohibited this organization from being saved:
Image image Failed to manipulate with MiniMagick, maybe it is not an image? Original Error: MiniMagick::Invalid
PS。如果我没有调整大小,图片上传工作正常。
PS2。我尝试添加config / environment.rb:
require 'rubygems'
require "mini_magick"
但没有成功(仍然无法正常工作 - 顺便说一句。使用mini_magick作为宝石时是否需要?)
答案 0 :(得分:16)
我确信你现在已经解决了这个问题(至少有希望!这已经差不多两个月了!),但这里有一个对我有用的解决方案:
通过自制程序卸载imagemagick:
brew uninstall imagemagick
清理自制程序目录:
brew cleanup --force -s
重新安装imagemagick:
brew install imagemagick
毕竟,你应该好好去!
答案 1 :(得分:0)
B中。 Ruschill的回答似乎已经解决了许多人的问题。问题,不幸的是,它对我来说并不适合。我没有在互联网上找到很多解决方案。
原来我有一个过时的libjpeg
版本。我通过使用brew删除并重新安装来修复此问题。其他图像格式也可能发生这种情况。也许对相应的lib
做同样的事情可能会解决问题。
TL; DR
brew remove libjpeg
brew install libjpeg