GIF文件格式拆解

797 阅读1分钟

自从Steve Wilhite(史蒂夫·威尔希特)在1987年发明gif文件格式以来,已历经30多年,真正的互联网老炮儿了。目前gif依然在表情表情包领域独领风骚。本文的目的是详细分析gif文件格式。想了解gif的历史、逸闻趣事的,本文结尾有入口,此处不赘述。

概述

以一个特别常见的gif图为例:

rb.gif

我们查看它的二进制内容:

image.png

好像除了开头的"GIF89a",后面的一头雾水呀。 gif的文件内容从逻辑上可以分为几部分:

image.png

文件头

image.png 文件头很简单,就是一个"GIF89a"或者“GIF87a”,用来标识两个不同的gif标准版本

文件尾

image.png

文件尾是固定两个字节0x3b

逻辑屏幕标识符

image.png

image.png

全局颜色表

image.png

应用扩展

image.png

image.png

图像控制扩展

image.png

图像标识符

image.png

image.png

GIF背景知识