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.
Comments? Feedback? Find me on Twitter, Mastodon, Bluesky, LinkedIn, Threads