GIF 压缩工具究竟改变什么
GIF 压缩可以缩小宽高、减少调色板颜色、精简动画帧,或重新组织编码数据。这些参数影响体积的方式不同,因此比单一、含义不明的质量滑块更值得分别控制。
GIF 每个调色板最多 256 种颜色,也没有现代视频常用的运动预测。因此,包含照片细节的短 GIF 可能比相同画面的 MP4 大很多。
压缩 GIF 的推荐顺序
希望保留动画流畅度时,先缩小尺寸,再把颜色从 255 减少到 128 或 64,最后才考虑每 2 帧或每 3 帧保留 1 帧。宽高都减半时,每个完整画面的像素数大约只剩四分之一。
工具默认使用最长边 800 像素、128 色并保留全部帧,适合作为起点。扁平图标可能只需 32 色,照片和渐变则可能需要 128 或 255 色。
- 保留原始 GIF。
- 先降低最长边。
- 再减少颜色并检查渐变。
- 仅在动画仍流畅时精简帧数。
- 比较体积并完整播放输出文件。
帧数、延迟与流畅度
精简帧数可以减少像素数据,但不能简单删除时间。工具会把跳过帧的延迟累加到保留帧,使总动画时长基本不变;变化的是流畅度,而不是播放速度。
慢速演示、闪烁图标和重复姿势适合精简帧;鼠标移动、快速旋转、字幕和严格卡点的动画通常应保留全部帧。
颜色与抖动
减少颜色可能让天空、阴影和皮肤渐变出现色带。抖动会用相邻颜色的点状组合模拟更多层次,但也可能增加噪点和体积。
Floyd–Steinberg 通常适合平滑渐变,Atkinson 更偏轻盈、风格化。扁平图标可以关闭抖动,再通过结果体积和实际观感决定。
为什么 GIF 压缩后仍然很大
尺寸、帧数、动画时长、每帧变化量和颜色复杂度都会增加体积。高分辨率照片型 GIF 即使降低颜色,仍可能很大。已经优化过的 GIF 重新编码后也可能略微增大。
如果目标平台接受动态 WebP、WebM 或 MP4,它们通常更适合长动画和照片画面。只有在目标明确要求 GIF、需要传统兼容性或自动循环图片时,才应坚持 GIF。
浏览器本地处理与大文件
工具在浏览器中解码帧、缩放、减色并重新编码,没有 GIF 上传接口,也不调用第三方文件处理 API。
GIF 在磁盘上的体积不等于内存占用。解码后的 RGBA 帧可能使用数百 MB 内存,处理长动画时请关闭其他标签页、一次处理一个文件并保持设备唤醒。
常见问题
怎样压缩 GIF 并保持动画?
优先缩小尺寸和减少颜色,同时保留全部帧;只有在完整播放仍流畅时才精简帧数。
GIF 压缩会上传文件吗?
不会。GIF 解码和编码均在当前浏览器本地完成。
为什么减少颜色后出现像素感?
调色板可能没有足够的颜色表现渐变。可以提高最大颜色数或开启抖动,但无法恢复源文件中本来就没有的细节。