← 返回科研导航

GIF 动图优化

帧间差分 · 相近色合并 · 全程本地

English 简体 繁體

把 GIF 拖到这里

或点击选择 · 支持多选 · 可 Ctrl+V 粘贴 · 在页面任意位置松手即可

一次可拖进多个 .gif,单个不超过 60 MB。文件只在你自己的浏览器里逐帧解码与重编码,不上传、不经过服务器。

优化设置

0

还没有 GIF —— 拖几个进来试试

这是什么工具

GIF 动图优化是一台跑在你浏览器里的 GIF 压缩器。GIF 的原始结构很朴素:每一帧都是一整幅画面的索引图,哪怕这一帧只动了光标一样的一小块,剩下的像素也要重新存一遍;很多工具导出的 GIF 连帧间差分都没做过。本页把自己逐帧解码出来的画面重新组织:先按 disposal 规则把每一帧合成成完整画面,再和「上一帧屏幕上是什么」逐格比对,只把变化的那一片写进文件,其余位置留一个透明索引让上一帧透出来 —— 这就是帧间差分,也是 GIF 优化真正省体积的地方。

在差分之上还有三档可用的收手:把相差很小的颜色并成一个(相近色合并,抗锯齿产生的那堆近似灰最吃这一招,LZW 能串起的重复串立刻变长)、把 24 位色压到 256/128/64/32/16 色(可选误差扩散抖动)、以及等比缩放与抽帧。改任何一项,队列里的文件都会立刻重算,你能当场看到体积与画质各自的代价,选到刚好能接受的那一档就走。全程在自己的浏览器里算,文件不上传,透明像素、播放延时与循环次数都按原样保留(注释与元数据会被去掉,这部分通常也是白吃的体积)。

功能

怎么用

  1. 把 .gif 拖到页面上(可以在任意位置松手),或点「选择 GIF 文件」多选,也可以直接 Ctrl+V 粘贴剪贴板里的动图。
  2. 先按「保持画质」跑一遍:不动颜色、不动尺寸,只看帧间差分能省多少。不够再上「推荐」,还不够就试「强力压缩」或自定义逐项调。
  3. 在队列里点「对比」,原件与优化后的动图并排同时播放,逐像素确认画质能不能接受;体积、尺寸、帧数都写在标题栏。
  4. 单个文件点「下载」,多个文件点「全部下载 ZIP」。文件名会变成「原名-opt.gif」,已存在的同名文件会自动加序号。

常见问题

大概能省多少?
分两种情况。原图没做过帧间差分时收益最大:低动效的图(背景静止、只有小块在动)常见省 30%–60%。如果原图已经是优化工具导出的(帧差做过),「保持画质」档一般只剩 5%–20% 的余量 —— 主要来自重新 LZW 编码与去掉注释元数据,这时真正的降幅要靠降色、相近色合并、缩放与抽帧:截图类用相近色合并通常再到 15%–25%,缩到 75% 并抽帧可以压到原来的 30% 以下。
「保持画质」真的完全无损吗?
颜色数不超过 255 的 GIF 是逐像素相同的:调色板按你文件里真实出现的颜色精确建立(GIF 单帧最多 256 色,我们留一格给透明,所以可用是 255 色),不缩放、不抽帧、不改帧延时。多帧合起来的颜色超过 255 时(各帧用了不同调色板的动图很常见),必须先做一次调色板合并才能做帧间差分,这一步会有肉眼难辨的差异,队列行内会标出「已降色」。另外帧上的注释与应用扩展块(含元数据)总会被去掉,这是刻意的。
为什么开了抖动体积反而更大?
误差扩散会把「一整片相同的颜色」打散成棋盘状的噪点,看着更细腻,却让 LZW 找不到可复用的重复串,帧间差分也会被这些碎点撑大。实测同一张渐变图,开抖动常常多 20%–50% 体积。所以默认关着,只有色带实在难看时才建议打开。
抽帧会让动画变卡吗?速度会变吗?
速度不会变:每 N 帧保留 1 帧时,被抽掉的那些帧的播放时长会并进保留帧,整体播放长度保持不变。观感上,动作快的段落会显得跳帧 —— 适合聊天头像、预览动图这类小尺寸场景;逐字动画、鼠标轨迹这类细节动作建议别抽。
我的 GIF 会上传吗?透明和循环能保住吗?
不会上传。整条链路(解码、合成、量化、差分、重编码)都在浏览器的工作线程里跑,页面没有任何提交文件的接口,关掉网络也能继续用。透明像素、每帧延时、以及 NETSCAPE 的循环次数都会按原样写回(单帧结果不再写循环块)。

站内其他工具

纯浏览器本地处理 · 不上传 · 免费 · 支持中/繁/英