The quickest way is to just peek at bytes 24 and 25 in the PNG file. They contain the bit depth (1, 2, 4, 8, or 16) and color type
- 0: gray,
- 2: rgb,
- 3: indexed (colormapped),
- 4: gray+alpha, or
- 6: rgba.
If the bitdepth is 8 and the colortype is 3 you have a PNG8, and if the bitdepth is 8 and colortype is 2 you have a PNG24.
On a *nix platform, the "file" command will do this for you, e.g.,
A PNG8:
glenn.rp> file logo.png
logo.png: PNG image data, 640 x 480, 8-bit colormap, non-interlaced
A PNG24:
glenn.rp> file rose.png
rose.png: PNG image data, 70 x 46, 8-bit/color RGB, non-interlaced
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…