GIF

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP





body.skin-minerva .mw-parser-output table.infobox captiontext-align:center





















GIF

Rotating earth (large).gif
一个图像互换格式图片示例

扩展名
.gif

互联网媒体类型

image/gif
类型代码英语Type code

GIFf
统一类型标识
com.compuserve.gif
特征签名
GIF87a/GIF89a
开发者
CompuServe
初始版本
1987年,​32年前​(1987[1]
最新版本
89a
(1989年,​29年前​(1989[2])

格式类型
位图图像格式
网站
www.w3.org/Graphics/GIF/spec-gif89a.txt

图像互换格式(GIF,Graphics Interchange Format)是一种位图图形文件格式,以8位色(即256种颜色)重现真彩色的图像。它实际上是一种压缩文档,采用LZW压缩算法进行编码,有效地减少了图像文件在网络上传输的时间。它是目前全球資訊網广泛应用的网络传输图像格式之一。




目录





  • 1 歷史


  • 2 專利


  • 3 特性


  • 4 技术简介


  • 5 参考资料


  • 6 外部链接




歷史


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


圖像互換格式格式的原始版本叫做87a。1989年,CompuServe發布了一個名為89a的增強版本,在这个版本中,为图像互换格式文档扩充了图形控制区块、备注、说明、应用程序接口等四个区块,并提供了对透明色和多帧动画的支持。現在我們一般所說的GIF動畫都是指89a的格式[3]


1995年9月,Netscape Navigator 2.0支援讓動畫GIF無限循環的功能[4]


2015年5月,Facebook添加了GIF支持,尽管他们最初不支持在他们的网站上使用GIF。[5][6]



專利


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


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



特性




全色的圖像




被做了减色的图像的样品


  1. 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。

  2. 可插入多帧,从而实现动画效果。

  3. 可设置透明色以产生对象浮现于背景之上的效果。

  4. 由于采用了8位元压缩,最多只能处理256种颜色,故不宜应用于真彩色圖片。


技术简介


图像互换格式主要是为数据流而设计的一种传输格式,而不是作为文件的存储格式。它具有顺序组织形式而不是随机组织形式。


图像互换格式有五个主要部分以固定顺序出现,所有部分均由一个或多个區块(block)组成。每个块由第一个字节中的标识码或特征码标识。这些部分的顺序为:头块、逻辑屏幕描述块、可选的“全局”色彩表块(调色板)、各图像数据块(或专用的块)以及尾块(结束码)。下面是这些部分的内容:


  1. 起头為一个區块,它识别数据流为图像互换格式,并指示如何解释后面的数据所需的最早版本的图像互换格式解码程序(87a或89a)。

  2. 逻辑程序描述块定义了:所有后面图像的图像平面的大小、纵横尺寸比以及色彩深度(它类似于产生图像的监视器屏幕)。它还指明后面跟随的是否为“全局”色彩表。

  3. 全局色彩表(如果存在)构成一个24位RGB元组的调色板(每种底色为一个字节)。如果后面的像没有其自己的“局部”调色板,那么全局色表就是缺省调色板。

  4. 后续数据作为“图形”或“专用”块出现。图形块典型地包含一个或多个位图图像,也可能是覆盖的文本。专用块或者包含一个专用应用程序码,或者包含一句不可打印的注释。

  5. 最后的尾块指示值为3B(十六进制)的一个字节,表示数据流已结束。

注意:文件中的图像互换格式数据流可能根本就不包含任何位图数据,这时,它只是要传输全局色彩表,作为没有自己调色板的后续数据流的缺省调色板。



参考资料




  1. ^ Graphics Interchange Format, Version 87a. W3C. 15 June 1987 [13 October 2012]. 


  2. ^ Graphics Interchange Format, Version 89a. W3C. 31 July 1990 [6 March 2009]. 


  3. ^ 動畫的原理. 


  4. ^ Royal Frazier. All About GIF89a. [7 January 2013]. (原始内容存档于1999年4月18日). 


  5. ^ McHugh, Molly. You Can Finally, Actually, Really, Truly Post GIFs on Facebook. wired.com. 2015-05-29 [2015-05-29]. 


  6. ^ Perez, Sarah. Facebook Confirms It Will Officially Support GIFs. techcrunch.com. 2015-05-29 [2015-05-29]. 



外部链接


  • The GIFLIB project


  • spec-gif89a.txt GIF 89a specification on 万维网联盟

  • GIF 89a specification reformatted into HTML

  • LZW and GIF explained


  • Animated GIFs: a 6-minute documentary produced by Off Book (web series)英语Off Book (web series)

Popular posts from this blog

The Dalles, Oregon

眉山市

清晰法令