Carrierwave,如何为Google PageSpeed压缩图像

时间:2017-01-22 01:23:13

标签: ruby-on-rails ruby-on-rails-4 carrierwave pagespeed

当我使用Google PageSpeed时,我被告知需要压缩我的图片。例如:

Compressing https://xxx.s3.amazonaws.com/xxxx.jpg could save 33.2KiB (66% reduction).

我不确定如何让Google在这里开心......在Carrierwave中,我有以下设置:

version :thumb do
  process resize_to_fill: [340, 260]
  process :quality => 86
end

如果我将过程质量移动到86以外的任何其他值,则图像看起来不太好。是否有一些其他设置/技巧我缺少压缩图像的方式会使Google PageSpeed感到高兴并帮助我的网站快速加载?

由于

1 个答案:

答案 0 :(得分:1)

我没有尝试resize_to_limit帮助,这可能会对您有所帮助:

process :resize_to_limit => [340, 260]
  

它会调整图像大小以适应指定的尺寸   保留原始宽高比。只会调整图像大小   大于指定的尺寸。

您可以执行几种图像优化方法。桌面和在线。对于桌面,我建议使用JPEGOPTIM实用程序来优化jpeg文件。

  

提供无损优化(基于优化霍夫曼   表)和"有损"基于设定最高质量的优化   因素。

如果您使用的是Linux,请从终端安装:

sudo apt-get install jpegoptim

然后转到图片所在的文件夹并检查其大小:

du -sh photo.jpg

之后运行以下命令来优化它:

jpegoptim photo.jpg

您将看到输出。

  

您也可以将给定图像压缩为特定尺寸,但它   停用无损优化

您还可以使用以下命令批量优化图像:

jpegoptim *.JPG

另一种桌面方式是使用PS或GIMP手动进行基本优化。包括裁剪不必要的空间,将颜色深度降低到最低可接受水平,删除图像注释和(保存为Web 选项)

您也可以使用在线解决方案。有很多,我建议这些例如:

https://tinypng.com

https://kraken.io

还有 WebP 格式(developed by Google)Chrome& Opera支持它,但Firefox不支持它,因此基本上需要根据能够显示此格式的浏览器发送的HTTP Accept标头有条件地提供图像。如果您选择WebP格式,请检查此Blog,您可以使用某个gem。 (Rails 4)

我希望它有所帮助,