Reduce the size of PNG and JPEG files using the pngcrush and jpegtran tools, as described at yuiblog.com/blog/2008/11/14/imageopt-3/
The tools pngcrush and jpegtran must be installed on your system.
to get pngcrush on a mac with macports just do:
sudo port install pngcrush
or on a system with apt (like ubuntu)
apt-get install pngcrush
and to get jpegtran
apt-get install libjpeg-progs
This will help you install jpegtran from source for macs or Unix/linux www.phpied.com/installing-jpegtran-mac-unix-linux/
Can be used with single files and with directories:
require 'image_crush' ImageCrush('path/to/image.png') ImageCrush('path/to/image.jpg') ImageCrush('path/to/dir')
Rake task for Rails
ImageCrush also comes with a handy rake task to be used with Ruby on Rails. To use it, add the following line to your Rakefile:
Then, simply invoke the task with:
This will automatically traverse your public/images directory and reduce the size of all PNG/JPEG files, including subdirectories.
Note on Patches/Pull Requests
Fork the project.
Make your feature addition or bug fix.
Add tests for it. This is important so I don't break it in a future version unintentionally.
Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but
bump version in a commit by itself I can ignore when I pull)
Send me a pull request. Bonus points for topic branches.
Copyright © 2009 Ryan Shaw. See LICENSE for details. Copyright © 2008 Pablo Brasero Moreno. See LICENSE for further details.