我有一段时间让这个工作,而且仍然是.我会理解它的核心.我正在关注Ryan Bates教程,使用Jcrop和Carrierwave进行裁剪工作.我选择使用MiniMagick,因为即使在我的机器上重新安装ImageMagick和RMagick后,我也会收到一个错误,导致我本地计算机上的rails服务器死机.无论如何切换到MiniMagick修复了我.所以到目前为止,一切都非常好.我生成了不同大小的图像,并且它们已成功上传.但是一旦我尝试裁剪,我就会收到此错误:
undefined method `crop!' for #<MiniMagick::CommandBuilder:0x000001052e4608>
Run Code Online (Sandbox Code Playgroud)
这让我感到困惑,因为我使用的代码与Bates完全相同:
def crop
if model.crop_x.present?
resize_to_limit(700, 700)
manipulate! do |img|
x = model.crop_x.to_i
y = model.crop_y.to_i
w = model.crop_w.to_i
h = model.crop_h.to_i
img.crop!(x, y, w, h)
end
end
end
Run Code Online (Sandbox Code Playgroud)
无论如何,这种作物方法失败了.所以我想,这是一个ImageMagick命令...所以我看了ImageMagick doco,我找不到爆炸的裁剪方法,所以我没试过,然后错误转向:
No such file or directory - /var/folders/dF/dFNM2+Y7FVScn4+OxVHKOU+++TI/-Tmp-/mini_magick20111207-34409-1tnaa07.jpg
Run Code Online (Sandbox Code Playgroud)
无论如何,有些东西对我来说没什么意义,任何帮助都会受到赞赏!谢谢阅读!