This is one of those note-to-self type of posts. Just went through the exercise of installing a number of PNG tools on the Mac and here are some notes. The instructions below should probably work on any unix box.
AdvDef, AdvPng, ...
There is a number of Adv* tools (advdef, advpng, advmng, advzip) packed together as AdvComp. Installation difficulty: fairly straighforward.
Download:
$ curl http://softlayer.dl.sourceforge.net/sourceforge/advancemame/advancecomp-1.15.tar.gz \ > advcomp.tar.gz
Uncompress:
$ tar -xzvf advcomp.tar.gz
Compile and install:
$ cd advancecomp-1.15/ $ sudo ./configure $ sudo make install
Test:
$ advdef advancecomp v1.15 by Andrea Mazzoleni Usage: advpng [options] [FILES...] Modes: -z, --recompress Recompress the specified files Options: -0, --shrink-store Don't compress -1, --shrink-fast Compress fast -2, --shrink-normal Compress normal -3, --shrink-extra Compress extra -4, --shrink-insane Compress extreme -f, --force Force the new file also if it's bigger -q, --quiet Don't print on the console -h, --help Help of the program -V, --version Version of the program
Excellent! Next.
OptiPng
OptiPng is another easy install.
Download and decompress:
$ curl http://superb-west.dl.sourceforge.net/sourceforge/optipng/optipng-0.6.3.tar.gz \ > optipng.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 1035k 100 1035k 0 0 171k 0 0:00:06 0:00:06 --:--:-- 196k $ tar -xzvf optipng.tar.gz
Compile and install:
$ cd optipng-0.6.3 $ sudo ./configure $ sudo make install
Test:
$ optipng OptiPNG 0.6.3: Advanced PNG optimizer. Copyright (C) 2001-2009 Cosmin Truta. Synopsis: optipng [options] files ... Files: Image files of type: PNG, BMP, GIF, PNM or TIFF Basic options: -?, -h, -help show the extended help -o <level> optimization level (0-7) default 2 -v verbose mode / show copyright and version info Examples: optipng file.png (default speed) optipng -o5 file.png (moderately slow) optipng -o7 file.png (very slow) Type "optipng -h" for extended help.
Beauty! Next - pngout.
PNGout
PNGOut's source is not distributed openly. But there are binaries for a number of platforms here.
Download:
$ curl http://static.jonof.id.au/dl/kenutils/pngout-20070430-darwin.tar.gz \ > pngout.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 97597 100 97597 0 0 46704 0 0:00:02 0:00:02 --:--:-- 56739 $ tar -xzvf pngout.tar.gz
This way you end up with a binary named pngout-darwin
. Rename and move somewhere where executables live:
$ sudo mv pngout-darwin /usr/bin/pngout
Test:
$ pngout PNGOUT [In:{PNG,JPG,GIF,TGA,PCX,BMP}] (Out:PNG) (options...) Apr 30 2007 by Ken Silverman (http://advsys.net/ken) Mac port assistance by Jonathon Fowler (http://jonof.edgenetwork.org/pngout) PNGOUT optimizes PNG size losslessly using my own deflate algorithm (not Zlib) With the right options, it can often beat other programs by 5-10%. Options: -c# PNG output color type: 0=Gray, 2=RGB, 3=Pal, 4=Gray+Alpha, 6=RGB+Alpha -f# PNG output filter...
PngRewrite
PNGRewrite was a little trickier, until I realized I need to install libpng first.
Download and install libpng:
$ curl ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.37.tar.gz \ > libpng.tar.gz $ tar -xzvf libpng.tar.gz $ cd libpng-1.2.37/ $ sudo ./configure $ sudo make install
Download, unzip pngrewrite:
$ curl http://entropymine.com/jason/pngrewrite/pngrewrite-1.3.0.zip \ > pngrewrite.zip $ unzip pngrewrite.zip
Compile pngrewrite (the make
file didn't work for me) and copy the binary where executables are comfortable.
$ gcc -lpng pngrewrite.c -o pngrewrite $ sudo cp pngrewrite /usr/bin/
Test:
$ pngrewrite pngrewrite v1.3.0: PNG image palette optimizer Usage: pngrewrite infile.png outfile.png
That's all, folks
Installing PNGCrush? Blogged before.
And if anyone has an idea how to get deflopt installed, please comment.