在Carrierwave中,如何为Google PageSpeed压缩图像

问题描述 投票:1回答:1

[当我使用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满意并帮助我的网站快速加载的方式来压缩图像吗?

ruby-on-rails ruby-on-rails-4 carrierwave pagespeed
1个回答
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手动进行基本优化。包括裁剪不必要的空间,将颜色深度减小到可接受的最低水平,删除图像注释以及(另存为网络选项]

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

https://tinypng.com

https://kraken.io

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

希望对您有帮助,

© www.soinside.com 2019 - 2024. All rights reserved.