Science Fair Project Encyclopedia
The format was introduced in 1987 by CompuServe in order to provide a color image format for their file downloading areas, replacing their earlier RLE format which was black and white only. GIF became popular because it used LZW data compression, which was more efficient than the run-length encoding that formats such as PCX and MacPaint used, and fairly large images could therefore be downloaded in a reasonable amount of time, even with very slow modems.
The optional interlacing feature, which stored image scanlines out of order in such a fashion that even a partially downloaded image was somewhat recognizable, also helped GIF's popularity, as a user could abort the download if it was not what was required.
GIF is widely believed to be limited to 256 colors though this is not strictly true.
English speakers often pronounce "GIF" with either an affricate as in "giraffe" /dʒɪf/ or a plosive as in "gift" /gɪf/. The format's creators are quoted as using an affricate to pronounce the acronym. There is plenty of evidence to suggest this, much of which can be found here: . However, many people use the plosive pronounciation in daily conversation. The affricate was used as the developers had a sense of humour "Choosy Developers Choose GIF", making a play on a then famous commercial for peanut butter. Outside of the English language there are a number of further variants.
The original version of GIF was 87a. In 1989, CompuServe devised an enhanced version, called 89a , that added support for multiple images in a stream and storage of application-specific metadata. The two versions can be distinguished by looking at the first six bytes of the file, which, when interpreted as ASCII, read "GIF87a" and "GIF89a", respectively.
When the World Wide Web gained popularity, GIF became one of the two image formats commonly used on Web sites, the other being JPEG. Most Internet browsers at this time did not support any other image formats, not even uncompressed Windows bitmap files, to discourage web designers from using files larger than necessary.
The GIF89a feature of storing multiple images in one file, accompanied by control data, is used extensively on the web to produce simple animations.
Unisys and LZW patent enforcement
Before 1994, Unisys was not aware that GIF used LZW. In December 1994, after Unisys discovered that GIF used the LZW, they announced that they would be seeking royalties on that patent; all commercial programs capable of producing GIF files would be required to pay a license fee to Unisys.
By this time, GIF was in such widespread use that most companies producing these programs had little choice but to pay. The desire for a format with fewer legal restrictions (as well as fewer technical restrictions such as the number of colours) led to the development of the PNG format, which has become the third most common image format on the Web.
In late August 1999, Unisys terminated its royalty-free LZW technology licenses for free software and non-commercial proprietary software and even for individual users of unlicensed programs, prompting the League for Programming Freedom to launch the Burn All GIFs campaign to inform the public of the alternatives.
On June 20, 2003, the United States patent on the LZW algorithm expired, which means that Unisys and Compuserve can no longer collect royalties for use of the GIF format in that country. Those bothered with the patent enforcement dubbed this day GIF Liberation Day. The equivalent patents in Europe and Japan expired on June 18 and June 20 2004 respectively, with the Canada patent following on July 7.
Even with the general adoption of broadband, the size of downloads continues to be a critical issue on the world wide web. Large web pages have a negative effect on user experience by being slow to render. Large web pages are also more expensive for their owners who pay by the megabyte once traffic has passed a certain level. Therefore GIF's compression makes it desirable as an image format for use on webpages.
GIF is the only widely used image format to support animation. It is frequently used to make small animations and short, low-resolution films for web pages.
Most web page logos and design element images are GIF or PNG because those are designed to successfully compress images that contain large blocks of the same color or of repeating patterns; JPEG cannot compress areas of flat, clean color well.
JPEG is preferred for digital photographs because it allows images to contain more than 16 million different colors (GIF gives a choice of only 256 of those colors per image) and it compresses photographs better. Uncompressed bitmap formats like Windows bitmap are sometimes preferred for images in computer software when speed is more important than reduced file size, because uncompressed bitmaps can be displayed more quickly.
GIF is palette based: although any colour can be one of millions of shades, the maximum number of colours available for each frame is 256, which are stored in a "palette", a table which associates each colour number with an actual colour value. The limitation to 256 colours seemed reasonable at the time of GIF's creation because few people had the hardware to display more. Typical line drawings, cartoons, grayscale photographs, and similar graphics need only 256 colours.
There exist ways to dither colour photographs by alternating pixels of similar colours to approximate an in-between colour, but this transformation inevitably loses some detail, and the algorithms to select colours and to perform the dithering vary widely in output quality, giving dithering a possibly unwarranted bad reputation. Additionally, dithering significantly reduces the image's compressibility and thus works contrary to GIF's main purpose.
It is possible to achieve more than 256 colors by splitting the image into multiple image blocks, each with its separate local palette. Taken to the extreme you could perfectly encode a truecolor image by storing the image in palettes and making the image blocks a simple 16x16 block containing every palette entry (there are more efficient ways to achieve the same effect but this is the easiest to understand). There is a fairly large size penalty for doing this though. Also most web browsers seem to render the truecolor gifs very slowly. (demo)
GIF allows transparent pixels.
The PNG format was specifically designed to replace GIF for use as a single-image web format. PNG offers better compression and more features than GIF. All popular web browsers support PNG images, although it is interesting to note that as of the beginning of 2005, a number of popular browsers including Internet Explorer still have several issues with the PNG format.
PNG is rapidly replacing GIF for still images, mostly on web sites of computer enthusiasts protesting Unisys's license policies and on some cartoon sites that take advantage of PNG's tighter compression to save on Internet bandwidth charges.
All the features of GIF except animation are supported by PNG. As new web browsers support PNG, most GIF images could be replaced by PNG images. The most recent versions of Internet Explorer, however, do not support PNG's 8-bit alpha transparency, a feature absent from GIF images which only provides 1-bit transparency, i.e., pixels are either fully transparent or fully opaque. This is not a problem with many other web browsers.
The mistaken belief that PNG files are larger than GIF for the same images can generally be traced back to one of two things:
- People making the unfair comparision of the file size of 8 bit GIF with 24 bit PNG.
- The poor PNG support in older versions of Adobe Photoshop.
MNG, the animation-supporting relative of PNG, has reached version 1.0 in 2001 and few applications support it. It has therefore had little impact on the use of GIFs for animation. Today animations may be the only field where GIF is needed, because of the lack of web browser support for MNG.
In 2004, a proposed extension to the PNG format, called APNG was suggested. It would add the ability to animate PNG files, while retaining backwards compatibility in decoders which cannot understand the animation chunk. Such decoders would simply display it as though it were a single image PNG file.
- GIF89a specification
- Burn All GIFs - a site providing information about the ramifications of the LZW patent, advocating the abandonment of the format
- Why There Are No GIF files on GNU Web Pages
- The GIF Controversy: A Software Developer's Perspective (by Michael C. Battilana)
- The GIF situation (by the League of Programming Freedom)
The contents of this article is licensed from www.wikipedia.org under the GNU Free Documentation License. Click here to see the transparent copy and copyright details