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')
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:
require 'image_crush'
Then, simply invoke the task with:
rake crush
This will automatically traverse your public/images directory and reduce the size of all PNG/JPEG files, including subdirectories.
-
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.