为什么 GIF 尺寸调整需要一个专门的工具
在大多数图像编辑器里打开一个动态 GIF,你拿到的是它的第一帧。缩放、保存,动画就没了。这 不是那些工具的 bug,它们本来就是围绕单张位图设计的,而 GIF 是一个带着自己时序的序列。
正确地做 GIF 尺寸调整,意味着缩放每一帧、保持帧与帧之间的延时,再把它们写回成一个循环播放 的文件。这个页面做的就是这件事,也正是它需要独立于普通图片尺寸工具存在的全部理由。
没人提的色板问题
GIF 的每一帧都是索引图:像素存的不是颜色,而是指向一张最多 256 项的表的编号。当你对这 张图重采样时,相邻两个像素之间的插值会产生一个介于它们两个色板条目之间的颜色,而这个颜色 无处安放。
解法是按缩放后的画面重新生成色板,而不是沿用原来那张。这就是为什么一个改尺寸的工具上会 出现颜色控制 —— 在你知道原因之前,这看起来很奇怪。保持默认值,结果会紧贴原图;如果你要 文件更小,而内容是扁平图形而不是照片,那就降到 64 或者 32。
怎么选宽度
GIF 的文件体积紧跟像素数,所以宽度是你手上最有力的杠杆。宽度减半,面积变成四分之一,文件 通常也按相近的比例下降。发聊天消息或者放进文档页面,480 像素通常绰绰有余;做一个内联示例, 320 就够;只有在细节真的重要时,800 才值得。
这些都不用靠猜:要做动态 GIF 改尺寸,选一个宽度,看页面里播出来的结果,不对就换一个。想要 GIF 缩小体积的话,宽度这一项通常一次就够。
全部过程都在你的浏览器里完成。单个文件最大 500 MB,不会被送到服务器,引擎第一次用时下载 一次,之后由浏览器缓存。