PNG (Portable Network Graphics) is a bitmapped image format that employs lossless data compression. PNG was created to improve upon and replace GIF (Graphics Interchange Format) as an image-file format not requiring a patent license.
PNG supports palette-based images, grayscale images, and full-color non-palette-based RGB[A] images (with or without alpha channel). PNG uses a non-patented lossless data compression method known as DEFLATE, which is the same algorithm used in the zlib compression library.
The first version of the PNG specification was released on October 1, 1996 as a W3C Recommendation.
Various tools are available for optimizing .png files; they do this by :
- removing ancillary chunks
- reducing color depth
- optimizing line-by-line filter choice
- optimizing DEFLATE compression.
In general one must use a combination of 2 tools in sequence for optimal compression: one which optimizes filters and removes ancillary chunks, and one which optimizes DEFLATE.
Some common tools are :
- OptiPNG
- PNGOUT
- Pngcrush
- PngGauntlet
There are several online tools available on the web to optimize .png files :
- PunyPNG, compression and image optimization tool developed by Gracepoint Berkeley
- Smush.it, by Yahoo Developer Network
A list of some useful tutorials about image compression is shown below :
- Clever PNG Optimization Techniques, by Sergey Chikuyonok
- A Basic Introduction to PNG Features, by Greg Roelofs
- 4 Free Tools to Optimize and Compress PNG Images Without Losing Quality, by Raymond.cc