pngcheck 2.3.0 released
Greg Roelofs <[email protected]> Sun, 8 Jul 2007 23:08:56 -0700
| Newsgroups | gmane.comp.graphics.png.announce |
|---|---|
| Message-ID | <[email protected]> |
I just finished uploading pngcheck 2.3.0 to various places and updating
its web page (though not its freshmeat page, yet). Here are the changes:
* 20070211 GRR: extended pngsplit file-signature recognizer to support MNG and
* JNG (as claimed in help screen)
* 20070704 GRR: cleaner fix for narrow interlaced images (account for missing
* passes); added rows per pass for interlaced images; added
* pass-separators in -vv row-filter output; added -c option for
* ANSI colors (filenames, chunk names, row filters, error/OK);
* alphabetized options on usage screen; made const string-arrays
* const
* 20070707 GRR: fixed 64-bit ptrdiff_t printf() issue (%td); added check for
* NULLs (and "discouraged" chars) in tEXt; added check for zero
* values in sCAL; fixed error cascade for private interlace
* method; fixed non-verbose-mode IDAT/PLTE message
I find the color output makes it considerably easier to parse some of the
info, but it's difficult to show here, and it's not even tested on a light-
background terminal. (Looks great on a black background, though. ;-) )
Here's an uncolored demo of the new interlacing hints, though (in the IDAT
section):
% pngcheck -vv pngtest.png
File: /util/graphics/libpng/pngtest.png (8574 bytes)
chunk IHDR at offset 0x0000c, length 13
91 x 69 image, 32-bit RGB+alpha, interlaced
chunk gAMA at offset 0x00025, length 4: 0.45455
chunk sBIT at offset 0x00035, length 4
red = 5 = 0x05, green = 5 = 0x05, blue = 5 = 0x05, alpha = 5 = 0x05
chunk bKGD at offset 0x00045, length 6
red = 0x00e0, green = 0x00e0, blue = 0x0080
chunk oFFs at offset 0x00057, length 9: 0x0 micrometers offset
chunk pCAL at offset 0x0006c, length 44: equation type 0
physical_value = p0 + p1 * original_sample / (x1-x0)
calibration name = bogus units
physical_value unit name = foo/bar
x0 = 0
x1 = 65535
p0 = 1.0e0
p1 = 65.535e3
chunk pHYs at offset 0x000a4, length 9: 2834x2834 pixels/meter (72 dpi)
chunk tIME at offset 0x000b9, length 7: 7 Jun 1996 17:58:08 UTC
chunk tEXt at offset 0x000cc, length 9, keyword: Title
chunk IDAT at offset 0x000e1, length 8119
zlib: deflated, 32K window, default compression
rows per pass: 9, 9, 9, 18, 17, 35, 34
row filters (0 none, 1 sub, 2 up, 3 avg, 4 paeth):
0 0 2 4 2 2 4 0 0 | 0 0 3 1 4 4 2 0 2 | 0 4 2 2 2
2 2 0 0 | 0 0 2 2 2 2 2 2 2 2 2 2 2 2 4 2 0 0 | 0
1 4 1 4 4 1 2 2 2 2 2 1 4 2 1 1 | 0 0 0 4 3 2 4 2
4 2 4 1 2 4 2 2 2 2 2 4 2 2 2 2 2 2 2 4 2 2 2 4 4
4 0 | 0 0 4 4 3 1 4 4 4 4 4 1 1 4 4 3 2 2 3 3 2 3
3 3 1 4 1 4 2 4 4 1 3 1 (131 out of 131)
chunk zTXt at offset 0x020a4, length 198, keyword: Description
chunk IEND at offset 0x02176, length 0
No errors detected in pngtest.png (12 chunks, 65.9% compression).
Of course, if you're not actively debugging the gcc MMX code, perhaps that
won't be quite as exciting to the rest of you. ;-)
The initial upload included Linux/x86 binaries; I'll see about cross-compiling
some win32 binaries "shortly."
Greg
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/