As promised last time, today we are going to give you a very quick overview on PNG format.
In a previous article we’ve told you that PNG format resulted from the effort of making a better and royalty-free successor for GIF, which at that time was confronted with a patent issue due to the LZW compression.
After the LZW patent expired, GIF got back to « freedom » but PNG was already there as the world’s most used lossless compression raster image format for WWW sharing, standing as a living example of how great things people can achieve when outrage unifies them against what they consider to be unfair.
As Wikipedia’s dedicated article puts it, « the original PNG specification was authored by an ad-hoc group of computer graphics experts and enthusiasts. Discussions and decisions about the format were done exclusively via email. »
But that’s about all when it comes to poetic aspects in the history of PNG; all the rest is a remarkable lesson of practical efficiency.
The first PNG draft was issued on 04 January 1995 and within just one week, most of the major PNG features were proposed if not even already accepted.
In the upcoming 3 weeks, 7 important drafts were produced.
Such amazing efficiency is explained by the above cited source as being the result of the high level of expertise of the team members combined with the « benevolent dictatorship » role assumed by Thomas Boutell.
Looks like this collaboration model (a small team of skilled members led by a respected and even beloved « dictator » , having an undisputed final word whenever consensus isn’t reached) worked very well for Linux kernel development , too (in that case the « dictator » being Linus Torvalds, of course), which is quite an interesting detail to mention as our own team works exactly the same way.
But back to PNG, by the begining of March 1995 (just 2 months after creation of the very first draft!) all specifications were in place (as of draft # 9) and they were so good they were officialy frozen.
In October 1996 version 1 of the PNG specifications was publicly released, at the same time becoming a W3C recomendation.
In short, the PNG format, (Portable Network Graphics, file extension .png) is a network-friendly, patent-free lossless raster graphics file format supporting grayscale images (with or without alpha channel) as well as both palette-based images (with palettes of 24-bit RGB or 32-bit RGBA colors) and full-color non-palette-based RGBA images (with or without alpha channel).
It also notoriously provides a transparency channel, allowing the colors in the image to fade from opaque to transparent.
And as its primary purpose was quality-image sharing over the internet, PNG optionally allows 2D interlacing , we’ve told you about that in our previous articles on JPEG and GIF formats.
But let’s add just 2 quick side-notes.
First, PNG not being meant for professional-quality printing purposes, it doesn’t support CMYK or other non-RGB color spaces .
The other one is about animations support : as a « successor » to GIF, PNG provides animation feature but not within the PNG format itself.
Instead, a variant (or extension) of PNG exists, named MNG (« Multiple-image Network Graphics »), which was still designed by the PNG Group, but it never reached popularity.
All that being said, PNG is an universal (cross-platform and cross-browser) format with a well-deserved place among digital image formats standards.
Of course, all our products, such as GdPicture.NET SDK toolkits for developers or PaperScan for the general public, fully supports PNG as well as its conversion to- and from- some other 90 image file formats.
In our next article we are going to make a synthesis to find out -by weighing the pros and cons- which image format would be a best fit for which purpose.
So see you next week!