GIF
2022-03-25 09:14:13 阿炯

图像互换格式(英语:Graphics Interchange Format,简称GIF)是一种位图图形文件格式,以8位色(即256种颜色)重现真彩色的图像。它实际上是一种压缩文档,采用LZW压缩算法进行编码,有效地减少了图像文件在网络上传输的时间。它是目前万维网广泛应用的网络传输图像格式之一。威尔海特(Stephen Wilhite)在Compuserve公司工作时,率领工程团队发明GIF档,凭着体积小、成像相对清晰的优点,十分适合早期互联网带宽小的环境,而今网络用户将GIF档用于创作,变成用来作为网络迷因的格式之一。


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

GIF格式的原始版本叫做87a。1989年,CompuServe发布了一个名为89a的增强版本,在这个版本中,为GIF文档扩充了图形控制区块、备注、说明、应用程序接口等四个区块,并提供了对透明色和多帧动画的支持。现在我们一般所说的GIF动画都是指89a的格式。Netscape于1990年提出了Netscape Application Block,定义了一个动画应该循环多少次或是否应该无限次地播放,这导致了GIF动画的流行。重复动画的功能首次出现在Netscape Navigator 2.0版本中,然后逐渐支持其他浏览器,尽管大多数浏览器都支持,但是严格来说不是89a规范的一部分。


特性

优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。
可插入多帧,从而实现动画效果。
可设置透明色以产生对象浮现于背景之上的效果。
由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。

专利

在早期,GIF所用的LZW压缩算法是CompuServe所开发的一种免费算法。然而令很多软件开发商感到意外的是,GIF文件所采用的压缩算法忽然成了Unisys公司的专利。据Unisys公司称,他们已注册了LZW算法中的W部分。如果要开发生成(或显示)GIF文件的程序,则需向该公司支付版税。在专利失效前曾引起部分开放源代码社群发起“Burn all GIFs”的运动抵制使用GIF格式。因此人们开始寻求一种新技术,以减少开发成本。PNG标准就在这个背景下应运而生了。它一方面满足了市场对更少的法规限制的需要,另一方面也带来了更少的技术上的限制,如颜色的数量等。在2003年6月20日,LZW算法在美国的专利权已到期而失效。在欧洲、日本及加拿大的专利权亦已分别在2004年的6月18日、6月20日和7月7日到期失效。与GIF相关的专利于2006年8月11日过期。尽管如此,PNG文件格式凭着其技术上的优势,已然跻身于网络上第三广泛应用格式。

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

GIF有五个主要部分以固定顺序出现,所有部分均由一个或多个区块(block)组成。每个块由第一个字节中的标识码或特征码标识。这些部分的顺序为:头块、逻辑屏幕描述块、可选的“全局”色彩表块(调色板)、各图像数据块(或专用的块)以及尾块(结束码)。下面是这些部分的内容:
1)起头为一个区块,它识别数据流为GIF,并指示如何解释后面的数据所需的最早版本的GIF解码程序(87a或89a)。
2)逻辑程序描述块定义了:所有后面图像的图像平面的大小、纵横尺寸比以及色彩深度(它类似于产生图像的监视器屏幕)。它还指明后面跟随的是否为“全局”色彩表。
3)全局色彩表(如果存在)构成一个24位RGB元组的调色板(每种底色为一个字节)。如果后面的像没有其自己的“局部”调色板,那么全局色表就是缺省调色板。
4)后续数据作为“图形”或“专用”块出现。图形块典型地包含一个或多个位图图像,也可能是覆盖的文本。专用块或者包含一个专用应用程序码,或者包含一句不可打印的注释。
5)最后的尾块指示值为3B(十六进制)的一个字节,表示数据流已结束。


2022年3月下旬消息,GIF 图像格式发明者、美国计算机科学家 Stephen Wilhite 因感染新冠已于上周去世,享年 74 岁。

Stephen Wilhite 在 1980 年代受雇于 CompuServe(全球第一家网络服务提供商) 期间发明了 GIF 图像格式 (GIF 即 Graphics Interchange Format 的缩写)。他在 2000 年代初退休,此后把时间花在了旅行、露营和在地下室建造火车模型上。


Stephen Wilhite 获得韦比终身成就奖(韦比奖由美国纽约国际数字艺术和科学学院创立,有网络界的奥斯卡奖之称)

尽管 GIF 是当今互联网动画文化的代名词,但这并非是 Stephen Wilhite 创建这种格式的原因。互联网诞生初期的访问速度非常缓慢,GIF 作为一种分发“高质量、高分辨率图形”的彩色方式而被推出。根据 Stephen Wilhite 妻子 Kathaleen 的描述,GIF 是 Wilhite 独自在家创建的,并在完善后将其投入到工作中。他花了一个月的时间才完成 GIF 格式的原型。

对于争论已久的 GIF 发音问题,Stephen Wilhite 早已进行过回应,他在 2013 年接受《纽约时报》的采访时表示,虽然牛津英语词典认可了两种发音,但他们错了,GIF 的发音为"jif",而不是 GIF。后来在获得韦比终身成就奖时的颁奖现场再次重申了这一说法。


在《Times》采访中,Wilhite 说他最喜欢的 GIF 之一是“跳舞的婴儿”,它在互联网 meme 文化成为广泛使用的术语之前就已经风靡一时。