GIF 可能是网路文化里最独特的存在:一个诞生于 1987 年、技术上早已过时的图片格式,却在 21 世纪的社群媒体上找到了第二春,成为情绪表达、幽默传播和文化迷因的主要媒介。了解 GIF 意味着同时了解它的技术结构和它的文化意义——这两者缺一不可。
GIF 是“Graphics Interchange Format”(图形交换格式)的缩写。它由美国线上服务公司 CompuServe 的工程师 Steve Wilhite 于 1987 年设计,最初版本称为 GIF87a。1989 年更新为 GIF89a,加入了动画支援——这个版本就是今天我们所说的动态 GIF 的基础。
GIF 的设计动机很实际:当时的拨接网路频宽极为有限,需要一种能在低频宽下传输图形的格式。GIF 使用 LZW 无损压缩算法(后来因为这个算法的专利问题引发了 PNG 的诞生),在当时的技术条件下表现出色。
GIF 每个画面最多只能包含 256 种颜色,这个限制在 2024 年看来非常原始,但在 1987 年是合理的设计选择。
GIF 使用的是索引色(indexed color)模式:每个像素不直接储存 RGB 颜色值,而是储存一个指向“调色盘”(palette)的索引数字。调色盘最多有 256 种颜色(2 的 8 次方),每种颜色是一个完整的 RGB 值。这种设计大幅减少了储存空间——每个像素只需要 1 个位元组(8 bit),而不是 3 个位元组(24 bit RGB)。
256 色对图示、简单插图、文字图形来说完全够用,但对照片就非常不够——照片通常需要数百万种颜色才能呈现自然的渐层和色调。这就是为什么 GIF 照片看起来会有明显的色带(banding)效果。
对于动态 GIF,有一个取巧的方法:虽然每一帧只能有 256 色,但不同帧可以使用不同的调色盘。透过这个技巧,整个动画可以使用的颜色总数远超过 256,只是在每一个静止画面上仍然受限。
动态 GIF 的原理非常简单:把多个静态图像(帧)依序储存在同一个档案里,并指定每帧的显示时间(以 1/100 秒为单位)和循环次数(0 = 无限循环)。播放器按照这个时序依次显示每帧,就形成了动画效果。
这个机制的特点:
GIF 的文化复兴始于 2000 年代末到 2010 年代初,Tumblr、Reddit、Twitter 等社群平台的崛起让 GIF 找到了完美的生态位。
GIF 作为文化媒介有几个独特的优势:
Giphy、Tenor 等 GIF 资料库的出现,以及各大平台(iMessage、WhatsApp、Twitter、Slack)的原生 GIF 键盘,让 GIF 成为日常数位沟通的基础设施。
技术上,GIF 已有多个更优秀的替代方案:
尽管技术上的替代方案更优秀,“GIF”这个词作为文化概念已经深入人心——人们说“传我一个 GIF”,即使实际传送的可能是 MP4。
一个无法回避的问题:GIF 到底是念 /gɪf/(硬 G,像“gift”去掉 t)还是 /dʒɪf/(软 G,像花生酱品牌“Jif”)?GIF 的发明者 Steve Wilhite 在 2013 年的韦氏字典年度词汇奖颁奖台上明确表示:“It’s pronounced JIF, not GIF.”但这个问题至今仍是网路上的热门争论,双方各有坚定支持者,大概不会有最终定论。
如果这个档案是机密的,最安全的做法是让它根本不离开你的电脑。图片格式转换完全在浏览器里执行:档案从你的硬碟读进记忆体、在本机处理、再写回硬碟,不会送到任何服务器。
在浏览器里直接完成,档案不会离开你的电脑:图片格式转换