如何制作Rails资产管道Gzip图像

时间:2014-01-04 04:27:42

标签: ruby-on-rails image pipeline assets

如何将Rails资产管道转换为Gzip压缩图像?它压缩css和js文件,但不压缩图像。

修改

重写的问题。最初这是关于子文件夹,但似乎Rails没有压缩任何图像。

2 个答案:

答案 0 :(得分:5)

来自section 4.1.2 in the canonical Rails Guides

  

当预编译文件时,Sprockets还会创建资产的gzip压缩版(.gz)。

要预编译资产,请使用捆绑的rake任务:

# from command line
RAILS_ENV=production bundle exec rake assets:precompile

<强>更新

经过对该主题的一些研究后,我发现,当Sprockets压缩JS和CSS资产时,它确实压缩图像。然后我遇到了这个宝石:sprockets-image_compressor

我自己没有实现它,但它声称使用pngcrushjpegoptim提供图像资源的无损压缩。有趣的是,文档陈述如下:

  

如果环境没有安装pngcrush和/或jpegoptim,gem将会回退到与gem一起打包的二进制文件中。

同样,我自己并没有使用它,但如果它符合它的要求,它可能就是你正在寻找的。

答案 1 :(得分:1)

它不压缩任何图像,因为图像已经被压缩(如jpeg)。因此,不需要节省流量。

这意味着您无法使用任何现有设置执行此操作。