What Is The Future of PNG?
miladus writes "The GIF patent (held by Unisys)
will expire on June 20. C|Net wonders
whether that will also mean that PNG "will lose its original
reason for being". Remember Burn All
GIFs? " My hope would be that at this point PNG can stand on its own technical merits, rather then on ideological merits.
Unfortunately even half my coworkers don't know what a PNG is. I try to send them a UML diagram made from DIA and they demand a readable format :(
--------
Free your mind.
Until IE fully supports the format, it might as well be dead. Nobody who wants the Alpha Channel support can use it in IE6 so it pretty much just sits there, an unused option.
Since IE apparently won't be getting an update until the next version of Windows, I don't see much changing.
It also doesn't help that creating PNGs with Alpha Channels isn't as easy as it can be in some apps.
GIF and JPG each do something quite well. GIF is well-suited for the rendering of static elements with a relatively small palette, like webpage design elements. It doesn't support photo-realistic images, but that's OK - a GIF can make a very small, efficient file that can load quickly. And it's been supported since the earliest days of the Internet.
JPG compliments GIF by providing a way to display high-quality photo images, and you can control the size of the rendered file by deciding how much you're willing to discard. Again, it's supported by every editor and browser, and it's been around since the beginnning.
PNG is a superior format to GIF from a technical perspective, and it's not encumbered by the LZW patent. However, from the perspective of most mainstream users, it doesn't solve a problem that actually affects them (they don't know or care about the Unisys patent issue), it isn't perfectly supported by all mainstream browsers and servers in use today, and it's a johnnie-come-lately to the standards wars.
Like it or not (I think it kinda sucks), most web developers seem to do things one of three ways: if they need small static elements they use GIF, for photos they use JPG, and if they need fancy-schmancy stuff they use Flash. And nobody worries whether or not platforms other than Windows with the latest IE can render their site, anyway. So maybe PNG will slowly become more common - it is a better format for the most part than GIF is, and pretty much all current browsers and servers (going forward - not some of the older versions that are still in use) support it pretty well out of the box. Really, what matters most is the bottom line (especially once the LZW patent is dead) - can PNG produce a better browsing experience for a site's users? If it can, it'll get used. If not, then it's dead.
-- Josh Turiel
"2. Do not eat iPod Shuffle."
That's only sort of correct. A gif can ONLY do transparency. A PNG allows up to 254 levels of partial transparency per channel, and can have multiple channels.
You want to know what REALLY held PNG back? It was Internet Explorer that STILL doesn't do the transparency right. More eople would start using the format right now if the implementation could do what the spec specifies. You see people all the time finding clever ways to make an image look like it blends into the background - which can be a pain in the ass to line up correctly. Imagine if the images could actually do partial transparency... that would make things easier woudn't it? Oh well, it's still a good lossless algorithm to cart images around with - I use it all the time for personal use and on my website.
I wonder if Microsoft's halfhearted support of PNG is deliberate. To be honest, it probably is, in an attempt to undermine open standards.
Ahem. Anyway, PNG is a format which would be superior to GIF in every aspect. Just a few problems...
1) Photoshop's PNG support sucks. It is entirely due to Photoshop that we have this insipid misconception that PNG is larger than GIF; if Photoshop would only compress PNG's decently, people would realize that this is false. Because unfortunately, most people are too lazy to use an optimizer along the lines of pngcrush.
2) IE/Windows' PNG support is awful. As I said, I believe that this is deliberate on Microsoft's part, given that they already have good PNG-handling code (in their AlphaImageLoader filter) and they simply refuse to use it as their default. Now, it is possible to use JavaScript -the scourge of the Net normally, but this is one of those points where it can be genuinely useful- to make IE apply the AlphaImageLoader filter to PNG images, but no one's managed to make a complete drop-in replacement that will apply to all PNG images im a page yet. It can be done, but it hasn't been done yet.
3) MNG support is nonexistent. Even Mozilla, the only browser which ever supported MNG, has removed it. This is a great shame.
Now, in the meantime, there actually is one use for images which PNG is ideally suited for, and where the transparency problems of IE/Win are not an issue: screenshots. The compression is good enough that particularly when dealing with computer-generated images, the file size isn't that much greater than JPEG, but there is no loss in image quality, which is especially important when grabbing screenshots of games or video. Screenshots are not transparent, as a rule, so IE/Windows has no problems. Unfortunately, it seems that this use of PNG has yet to be discovered by the mainstream.
PNG may also be good for certain types of wallpapeers, such as most computer-generated graphics or hand-drawn animation. Colors in these generally aren't as complex as they are in photographs, and the lossless compression of PNG works well under those conditions. Combine this with the fact that JPEG (the current de facto standard for wallpapers) has an inexplicable and yet undeniable hatred for the color red, and you have something which can better preserve these types of images. Worth considering, anyway.