图像互换格式(英語:Graphics Interchange Format,簡稱GIF)是一种位图图形文件格式,以8位色(即256种颜色)重现真彩色的图像。它实际上是一种压缩文档,采用LZW压缩算法进行编码,有效地减少了图像文件在网络上传输的时间。它是目前全球資訊網广泛应用的网络传输图像格式之一。史蒂芬·威爾海特(Stephen Wilhite)在Compuserve公司工作時,率領工程團隊發明GIF檔,憑著體積小、成像相對清晰的優點,十分適合早期網際網路頻寬小的環境,而今網路使用者將GIF檔用於創作,變成用來作為網路迷因的格式之一,威爾海特也在2013年獲得威比獎(The Webby Award)終身成就獎。至於「GIF」怎麼唸,許多人都唸成「gift」的音,但他本人正名應該唸「Jif」一樣的音。

GIF
Rotating earth (large).gif
一個顯示地球自轉的GIF動畫
扩展名.gif
互联网媒体类型image/gif
类型代码英语Type code
GIFf
统一类型标识com.compuserve.gif
特征签名GIF87a/GIF89a
开发者CompuServe
初始版本1987年,​35年前​(1987[1]
最新版本
89a
1989年,​33年前​(1989[2]
格式类型位图图像格式
网站www.w3.org/Graphics/GIF/spec-gif89a.txt

歷史

GIF格式自1987年由CompuServe公司引入后,因其体积小而成像相对清晰,特别适合于初期慢速的互联网,而从此大受欢迎。它采用无损压缩技术,只要图像不多于256色,则可既减少文件的大小,又保持成像的质量。(当然,现在也存在一些hack技术,在一定的条件下克服256色的限制)然而,256色的限制大大局限了GIF文件的应用范围,如彩色相机等。(当然采用无损压缩技术的彩色相机照片亦不适合通过网络传输。)另一方面,在高彩图片上有着不俗表现的JPEG格式却在简单的折线上效果不如人意。因此GIF格式普遍适用于图表,按钮等等只需少量颜色的图像(如黑白照片)。

GIF格式的原始版本叫做87a。1989年,CompuServe發布了一個名為89a的增強版本,在这个版本中,为GIF文档扩充了图形控制区块、备注、说明、应用程序接口等四个区块,并提供了对透明色和多帧动画的支持。現在我們一般所說的GIF動畫都是指89a的格式[3]Netscape於1990年提出了Netscape Application Block,定義了一個動畫應該循環多少次或是否應該無限次地播放,這導致了GIF動畫的流行[4][5]。重複動畫的功能首次出現在Netscape Navigator 2.0版本中,然後逐漸支援其他瀏覽器,儘管大多數瀏覽器都支援,但是嚴格來說不是89a規範的一部分[6]

2015年5月,Facebook開始支援GIF。[7][8]

專利

在早期,GIF所用的LZW压缩算法是CompuServe所开发的一种免费算法。然而令很多软件开发商感到意外的是,GIF文件所采用的压缩算法忽然成了Unisys公司的专利。据Unisys公司称,他们已注册了LZW中的W部分。如果要开发生成(或显示)GIF文件的程序,则需向该公司支付版税。在專利失效前曾引起部份開放原始碼社群發起「Burn all GIFs」的運動抵制使用GIF格式。因此,人们开始寻求一种新技术,以减少开发成本。它一方面满足了市场对更少的法规限制的需要,另一方面也带来了更少的技术上的限制,如颜色的数量等。

在2003年6月20日,LZW算法在美国的专利权已到期而失效。在歐洲日本加拿大的专利权亦已分别在2004年的6月18日、6月20日和7月7日到期失效。与GIF相关的专利于2006年8月11日过期。尽管如此,PNG文件格式凭着其技术上的优势,已然跻身于网络上第三广泛应用格式[9]

特性

 
被做了减色的图像的样品