加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 未定义的方法裁剪!在导轨上使用带有MiniMagic

发布时间:2020-12-16 20:26:02 所属栏目:百科 来源:网络整理
导读:我有一个时间让这个工作,但仍然是.我会得到它的核心.我正在关注Ryan Bates教程,使用Jcrop和Carrierwave进行裁剪.我选择使用MiniMagick,因为即使重新安装ImageMagick和RMagick在我的机器上,我得到一个错误,杀死我的本地机器上的rails服务器.无论如何切换到Min
我有一个时间让这个工作,但仍然是.我会得到它的核心.我正在关注Ryan Bates教程,使用Jcrop和Carrierwave进行裁剪.我选择使用MiniMagick,因为即使重新安装ImageMagick和RMagick在我的机器上,我得到一个错误,杀死我的本地机器上的rails服务器.无论如何切换到MiniMagick固定为我.
所以一切都很好,直到这一点.我有不同大小的图像被制作,并且正在上传成功.
但是一旦我尝试裁剪我得到这个错误:
undefined method `crop!' for #<MiniMagick::CommandBuilder:0x000001052e4608>

这是令我困惑的是,因为我使用的是与贝茨完全相同的代码:

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

无论如何,这是一种失败的作物方法.所以我想到了自己,这是一个ImageMagick命令…所以我看着ImageMagick的doco,我找不到与砰的裁剪方法,所以我试过没有,然后错误转向:

No such file or directory - /var/folders/dF/dFNM2+Y7FVScn4+OxVHKOU+++TI/-Tmp-/mini_magick20111207-34409-1tnaa07.jpg

无论如何,有些东西对我来说并没有什么意义,任何帮助将不胜感激!
谢谢阅读!

解决方法

有同样的问题,我的解决方案是这种方法
def cropped_image(params)
    image = MiniMagick::Image.open(self.image.path)
    crop_params = "#{params[:w]}x#{params[:h]}+#{params[:x]}+#{params[:y]}"
    image.crop(crop_params)

    image
end

只需修改我的方法为您的情况.关键在于哪种格式将变量传递给crop方法,希望这有助于您.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读