Paperclip保留动画GIF - 如何告诉它停止这样做?

时间:2016-02-25 08:12:08

标签: ruby-on-rails ruby paperclip

所以,我不想生成动画缩略图。有没有一种简单的方法可以解释这个回形针?

UPD。

当然,可以选择将动画转换为jpeg。但对我来说,这导致了一个非常低效的ImageMagic命令(看起来它正在处理每一帧以最终生成一个平面图像)。对于大型GIF来说,这尤其令人沮丧和耗时。

另外,当我只需要提取第一帧时,将gif转换为另一种格式对我来说感觉不对。毕竟,我不想换格式。

正如@faron评论的那样,ImageMagic具有从序列中选择帧的特殊语法:convert animation.gif[0] frame0.gif。我真正想要的是一种指示paperclip使用这种语法的方法。

1 个答案:

答案 0 :(得分:1)

好的,所以我问了一个问题,收到了一个downvote,现在我发布了一个答案 - 感觉有点奇怪,但无论如何:)

解决方案结果非常简单。有一个animated选项可以传递给Paperclip::Thumbnail处理器。如果animated选项为false,则Paperclip知道您只想要动画中的第一帧。例如:

has_attached_file :pic,
  styles: {
    large: { geometry: "700>", animated: false },
    thumb: { geometry: "280>", animated: false },
  }, 
  ...