使用Rmagick将动画gif转换为一个图像(imagemagick)

时间:2013-04-03 12:24:26

标签: ruby carrierwave rmagick

我知道有一种方法可以将多个图像转换为带有Rmagic的gif动画,但是我想做相反的事情。上传动画gif时,我希望它不是动画,我该怎么做? (图像流中的单个/任何图像都足够好)

我会将此作为carrierwave的一部分用于缩略图上的Rmagic重新处理

1 个答案:

答案 0 :(得分:0)

来自https://stackoverflow.com/a/13441569/473040

class DocumentUploader < CarrierWave::Uploader::Base
include CarrierWave::RMagick
#...

    version :thumb do
      process :remove_animation
      process :resize_to_fill => [300,200]

      #....
    end    

    def remove_animation
      # this will keep only first image of animated gif
      manipulate! do |img, index|
      index == 0 ? img : nil
    end

end
帕德和蒂亚戈佛朗哥