I want to know about uses of png files. There are two formats available for png images; one is png8 and the another one is png24.
I would like to know that if I use either type in my html
page, will there be any error? Or is this only quality matter?
There is only one PNG format, but it supports 5 color types.
PNG-8 refers to palette variant, which supports only 256 colors, but is usually smaller in size. PNG-8 can be a GIF substitute.
PNG-24 refers to true color variant, which supports more colors, but might be bigger. PNG-24 can be used instead of JPEG, if lossless image format is needed.
Any modern web browser will support both variants.
From the Web Designer’s Guide to PNG Image Format
PNG-8 and PNG-24
There are two PNG formats: PNG-8 and PNG-24. The numbers are shorthand
for saying "8-bit PNG" or "24-bit PNG." Not to get too much into
technicalities — because as a web designer, you probably don’t care —
8-bit PNGs mean that the image is 8 bits per pixel, while 24-bit PNGs
mean 24 bits per pixel.
To sum up the difference in plain English: Let’s just say PNG-24 can
handle a lot more color and is good for complex images with lots of
color such as photographs (just like JPEG), while PNG-8 is more
optimized for things with simple colors, such as logos and user
interface elements like icons and buttons.
Another difference is that PNG-24 natively supports alpha
transparency, which is good for transparent backgrounds. This
difference is not 100% true because Adobe products’ Save for Web
command allows PNG-8 with alpha transparency.
You have asked two questions, one in the title about the difference between PNG8 and PNG24, which has received a few answers, namely that PNG24 has 8-bit red, green, and blue channels, and PNG-8 has a single 8-bit index into a palette. Naturally, PNG24 usually has a larger filesize than PNG8. Furthermore, PNG8 usually means that it is opaque or has only binary transparency (like GIF); it's defined that way in ImageMagick/GraphicsMagick.
This is an answer to the other one, "I would like to know that if I use either type in my html page, will there be any error? Or is this only quality matter?"
You can put either type on an HTML page and no, this won't cause an error; the files should all be named with the ".png" extension and referred to that way in your HTML. Years ago, early versions of Internet Explorer would not handle PNG with an alpha channel (PNG32) or indexed-color PNG with translucent pixels properly, so it was useful to convert such images to PNG8 (indexed-color with binary transparency conveyed via a PNG tRNS chunk) -- but still use the .png
extension, to be sure they would display properly on IE. I think PNG24 was always OK on Internet Explorer because PNG24 is either opaque or has GIF-like single-color transparency conveyed via a PNG tRNS chunk.
The names PNG8 and PNG24 aren't mentioned in the PNG specification, which simply calls them all "PNG". Other names, invented by others, include
- PNG8 or PNG-8 (indexed-color with 8-bit samples, usually means opaque or with GIF-like, binary transparency, but sometimes includes translucency)
- PNG24 or PNG-24 (RGB with 8-bit samples, may have GIF-like transparency via tRNS)
- PNG32 (RGBA with 8-bit samples, opaque, transparent, or translucent)
- PNG48 (Like PNG24 but with 16-bit R,G,B samples)
- PNG64 (like PNG32 but with 16-bit R,G,B,A samples)
There are many more possible combinations including grayscale with 1, 2, 4, 8, or 16-bit samples and indexed PNG with 1, 2, or 4-bit samples (and any of those with transparent or translucent pixels), but those don't have special names.
Basic difference : a 8-bit PNG comprises a max. of 256 colors. PNG-24 is a loss-less format and can contain up to 16 million colors.
Impacts:
- If you are using any round corner image then edges might visible in png8 format.
- ie6 doesnt support png24 format.
The main difference is that a 8-bit PNG comprises a max. of 256 colours, like GIFs. PNG-24 is a lossless format and can contain up to 16 million colours.
While making image with fully transparent background in PNG-8, the outline of the image looks prominent with little white bits. But in PNG-24 the outline is gone and looks perfect. Transparency in PNG-24 is greater and cleaner than PNG-8.
PNG-8 contains 256 colors, while PNG-24 contains 16 million colors.
File size is almost double in PNG-24 than PNG-8.