Revision 1332557
Go back to digest for 20th January 2013Features in Development Tools
optimizegraphics: Add support for pngout and AdvanceCOMP.
The work and testing leading to this patch were created and graciously improved
after review by Bruno George Moraes. It adds several things:
- Usage of the pngout tool, written by the author of the Duke Nukem 3D game
engine. (pngout is free to download the binary of, but is non-Free software).
- Usage of the AdvanceCOMP tool, which is similar to OptiPNG, but uses the 7z
library (so it optimizes not just PNG but also things like .svgz and .mng).
- Parallel execution of these tools to recursively optimize a subdirectory of
images.
I've further improved it to meet coding style, remove a needless bash-ism, fix
some of the math code, and quiet the output a bit. Additionally it will use any
tools you have available instead of requiring you to run non-Free software to
work at all.
With parallel execution it is important to limit the number of simultaneous
processes xargs will run, we try grepping in /proc/cpu using Bruno's code, but
I limit it further to 4 tasks if that fails.
Thanks to Bruno for the patch and his patience, I figure this will probably be
one of the last SVN commits to kdesdk ever before we convert to git.
REVIEW:7000
FIXED-IN:4.11
File Changes
- /trunk/KDE/kdesdk/scripts/optimizegraphics