ruby – Carrierwave MiniMagick – 如何将动画GIF压缩到第一帧?

任何人都知道如何使用Carrierwave MiniMagick将动画GIF压缩到第一帧?

解决方法

我认为MiniMagick有一些变化,因为我花了三个小时试图找出为什么安德烈的代码对我不起作用.

我收到以下错误

ActiveRecord::RecordInvalid (Validation Failed: 
Image Failed to manipulate with MiniMagick,maybe it is not an image? 
Original Error: Command 
("mogrify -scene /var/folders/0o/0oqNck+++TI/-Tmp-/mini_magick2022-499-15zc.gif") 
Failed: {:status_code=>1,:output=>"mogrify: invalid argument for option 
`/var/folders/0o/0oqNck+++TI/-Tmp-/mini_magick2022-499-15zc.gif': -scene 
@ error/mogrify.c/mogrifyImageCommand/5558.\n"})

最后我发现MiniMagick :: Image的方法崩溃了! (在这里找到:http://www.ruby-doc.org/gems/docs/j/jf–mini_magick-3.1/MiniMagick/Image.html#method-i-collapse-21)解决了这个问题:

process :remove_animation

def remove_animation
  manipulate! do |img|
    if img.mime_type.match /gif/
      img.collapse!
    end
    img
  end
end

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...