1PNGNQ - PNG NEUQUANT 2VERSION 1.1 3 4USAGE: 5 6 pngnq [-vfhV][-s sample factor][-e extension][-d dir][-n colours][-Q f|n][input files] 7 options: 8 -v Verbose mode. Prints status messages. 9 -f Force ovewriting of files. 10 -s Sample factor. The neuquant algorithm samples pixels stepping by this value. 11 -n Number of colours the quantized image is to contain. Range: 2 to 256. Defaults to 256. 12 -e Specifies the new filename extension. Defaults to -nq8.png. 13 Will drop .png from original filenames. 14 -d Relocates the quantized files into this directory. 15 Otherwise output files stay in the same directory as the input files. 16 input files: The png files to be processed. Defaults to standard input if not specified. 17 -Q Dithering method: f = Floyd Steinberg, n = None (default) 18 -V Print version number and library versions. 19 -h Print this help. 20 21 Quantizes a 32-bit RGBA PNG image to an 8 bit RGBA palette PNG 22 using the neuquant algorithm. The output file name is the input file name 23 extended with "-nq8.png" or a specified extension. 24 25NOTES: 26 27Pngnq is a tool for quantizing PNG images in RGBA format. 28Pngnq is an adaptation by Stuart Coyle of Greg Roelf's pnqquant program 29using Anthony Dekker's neuquant algorithm. 30 31Pngnq exists because I needed a lot of png images in RGBA format 32to be quantized. After some searching, the only tool I could find 33that worked was pngquant. I tried pngquant but found that the median 34cut algorithm that it uses, with or without dithering, gave inferior 35looking results to the neuquant algorithm. You can see the difference 36demonstrated on the neuquant web page: 37http://members.ozemail.com.au/~dekker/NEUQUANT.HTML. 38 39The program was written to fulfill the specific needs of the small 40project I was working on, and as such does not have all the 41functionality one could want. 42 43I use Greg Roelf's png reading and writing code unchanged for the most part. 44The pngnq source code includes neuquant32, which is an extension of Anthony Dekker's 45neuquant, to make it handle 4 channels of pixel data. 46 47Major rewrite by Kornel Lesiński, adding double precision, dithering, better handling of alpha 48transparency and more. Thanks! 49 50This program has been tested on: 51 Linux 32 and 64 bit 52 Mac OSX - intel processor. 53 OpenBSD 32 bit 54 Win32 55 56REQUIREMENTS: 57 Pngnq depends on the libpng and libz libraries. 58 You will need libpng >=1.2.8 installed. 59 If you have this then you will have libz. 60 On windows you will require the libpng13.dll 61 which can be downloaded from several sites. 62 63BUGS: 64 Some problems with greyscale alpha images at low bit depths. 65 66TODO list: 67 68 I want to change the error measure to use CIE u' v' color 69 space and see if results are visually better. 70 71 Limited image input formats. I am not doing much checking on 72 the image pixel depth etc. 73 74 Do a detailed comparison with other quantization algortithms. 75 - the pngcomp tool is in development to do this. 76 77 78Copyright (c) Stuart Coyle 2004-2009 stuart.coyle@gmail.com 79 80See LICENCE for details of copyrights held on this program. 81