pngcheck |
pngcheck verifies the integrity of PNG, JNG and MNG files (by checking the internal 32-bit CRCs, a.k.a. checksums, and decompressing the image data); it can optionally dump almost all of the chunk-level information in the image in human-readable form. For example, it can be used to print the basic statistics about an image (dimensions, bit depth, etc.); to list the color and transparency info in its palette (assuming it has one); or to extract the embedded text annotations. This is a command-line program with batch capabilities.
Here's some sample output (screen shots, eh?):
% pngcheck -cvt ArcTriomphe-iCCP-red-blue-swap.png File: ArcTriomphe-iCCP-red-blue-swap.png (5171 bytes) chunk IHDR at offset 0x0000c, length 13 64 x 64 image, 8-bit colormap, non-interlaced chunk iCCP at offset 0x00025, length 461 profile name = Swapped red & blue channel compression method = 0 (deflate), compressed profile = 433 bytes chunk PLTE at offset 0x001fe, length 759: 253 palette entries chunk IDAT at offset 0x00501, length 3616 zlib: deflated, 32K window, default compression chunk tEXt at offset 0x0132d, length 68, keyword: Title PNG color-correction test image, swapped red and blue channels chunk tEXt at offset 0x0137d, length 143, keyword: Copyright Copyright 2005 Greg Roelofs. Licensed under Creative Commons AttributionNonCommercial, http://creativecommons.org/licenses/by-nc/2.5/ chunk tIME at offset 0x01418, length 7: 16 Aug 2005 07:07:07 GMT chunk IEND at offset 0x0142b, length 0 No errors detected in ArcTriomphe-iCCP-red-blue-swap.png (8 chunks, -26.2% compression). % pngcheck -c *.png OK: 000000.png (48x48, 1-bit grayscale, non-interlaced, 71.2%). OK: 000033.png (48x48, 1-bit colormap, non-interlaced, 66.0%). OK: 000066.png (48x48, 1-bit colormap, non-interlaced, 66.0%). OK: 000099.png (48x48, 1-bit colormap, non-interlaced, 66.0%). [...] OK: ffff66.png (48x48, 1-bit colormap, non-interlaced, 66.0%). OK: ffff99.png (48x48, 1-bit colormap, non-interlaced, 66.0%). OK: ffffcc.png (48x48, 1-bit colormap, non-interlaced, 66.0%). OK: ffffff.png (48x48, 1-bit grayscale, non-interlaced, 70.1%). ataylor-bad-text-length.png illegal (unless recently approved) unknown, public chunk xORk ERROR: ataylor-bad-text-length.png google-island-96x69.png zlib: inflate error = -3 (data error) ERROR: google-island-96x69.png Errors were detected in 2 of the 218 files tested. No errors were detected in 216 of the 218 files tested.
|
The current release supports all PNG, MNG and JNG chunks, including the newer sTER (stereo layout) and eXIf (EXIF metadata) chunks. It correctly reports errors in all but two of the images in Chris Nokleberg's brokensuite-20061204. Also included (since version 2.1.0) are two helper utilities:
The extra utilities are licensed under the GNU General Public License (GPL); pngcheck itself remains under its original, MIT/X11-style license.
Current version: | 3.0.3 | ||||||
Authors: | Alexander Lehmann, Andreas Dilger, Greg Roelofs | ||||||
License: | Open Source | ||||||
Platforms: | Unix, DOS, OS/2, Windows, Macintosh, Amiga, etc. | ||||||
README: |
local web site http://www.libpng.org/pub/png/src/ |
||||||
ChangeLog: |
local web site http://www.libpng.org/pub/png/src/ |
||||||
Binaries: |
|
||||||
Source code: |
local web site (.tar.gz) local web site (.zip) SHA-256 checksums: c36a4491634af751f7798ea421321642f9590faa032eccb0dd5fb4533609dee6 pngcheck-3.0.3.tar.gz 13135c2cedff3083574b79856d7c2604b9487af0dcb8067f32ddf526ed395107 pngcheck-3.0.3.zip |
||||||
Supporting libraries: |
zlib |
||||||
Related software: |
PNG file chunk inspector - PNG file integrity checker and chunk dissector pngmeta - PNG meta-information extractor |
|
|
|
Copyright © 2000-2021 Greg Roelofs.