AutoSmusher为亚马逊S3优化图像?

时间:2012-10-21 00:48:31

标签: ruby-on-rails image optimization amazon-s3 paperclip

使用回形针实现亚马逊s3图像的任何ruby实现?

PS:我用Google搜索并得到了这个:https://github.com/grosser/smusher并在我的本地计算机上运行得非常好。但要在亚马逊s3上使用这样的东西。为此创建一个自动化流程并轻松刷新新创建的内容将会非常棒。有什么想法吗?

我正在使用的代码来优化用户上传的图像。

has_attached_file :attachment, {
    :styles => {
      :medium => ["654x5000000>", :jpg],
      :small => ["260x50000000>", :jpg], 
      :thumb => ["75x75#", :jpg],
      :facebook_meta_tag =>["200x200#", :jpg] 
    },
    :convert_options => {
       :medium => "-quality 80 -interlace Plane",
       :small => "-quality 80 -interlace Plane",
       :thumb => "-quality 80 -interlace Plane",
       :facebook_meta_tag => "-quality 80 -interlace Plane" 
       },
       :s3_headers => { 'Cache-Control' => 'max-age=315576000', 'Expires' => 10.years.from_now.httpdate } 
    }.merge(PAPERCLIP_STORAGE_OPTIONS)

但仍然可以优化静止图像。我得到了宝石腮红,但很困惑如何使用它。根据GTmetrics,我目前的网页排名就在这里。

enter image description here

1 个答案:

答案 0 :(得分:3)

我一直在研究使用rails进行无损图像压缩,到目前为止,我认为我发现的最好的宝石是here。带有gem的指令说要添加一个:processors选项,该选项会传递一个包含多个处理选项的哈希,例如{gem}定义的:compression。它还需要安装jpgtran和optipng,我不确定Amazon S3是否有。