上周写一篇"折叠收纳箱"的图文,八张步骤图我本来拼成了一张长图。留言里一多半人说中间第三步看不清。改成动图以后又踩了新坑:第一版是 720×540、十六帧,导出 4MB 出头,我在地铁上试着打开,转了四五秒才动起来;第二版节奏太快,手还没到位就翻篇;第三版尺寸没统一,画面每跳一次都往左上角缩一下。来回四轮我才承认,GIF 不是"一张会动的图片",它是顺序、时长、尺寸三个数共同决定的东西,任何一个没定好都会白做。
一、什么时候该用 GIF,什么时候不该
| 载体 | 适合 | 代价 |
|---|---|---|
| GIF | 3–12 步的操作演示、一个循环动作、表情梗 | 调色板只有 256 色;体积随尺寸和帧数线性膨胀 |
| 长图 | 步骤超过十二步、需要放大细看、可能要打印 | 读者要来回滚,看不出连续动作 |
| 短视频 | 超过 10 秒、需要声音、需要真实色彩 | 平台规则多,读者默认静音播放 |
我的判断线:以动作表达为主、循环两三次内能讲完、不需要声音,用 GIF;步骤超过十二步还是老老实实做长图加编号,动图反而添乱。
二、三个参数各自决定什么
顺序决定读者能不能看懂因果,帧间隔决定他来得及看清,尺寸和帧数决定体积。间隔这一项我实测下来跨度很大:可选范围是每帧 100ms 到 3000ms,但 100ms 快得像鬼影,3000ms 又明显有停顿感。最后稳定落在两档——文字步骤停 800ms 左右,手部动作类的 200ms 左右。
| 我这次跑的组合 | 尺寸 | 帧数 | 帧间隔 | 成品体积量级 |
|---|---|---|---|---|
| 第一版 | 720×540 | 16 | 250ms | 约 4MB |
| 第二版 | 540×405 | 10 | 800ms | 约 1.4MB |
| 第三版 | 480×360 | 8 | 250ms | 约 700KB |
| 对照版 | 480×360 | 8 | 1200ms | 约 700KB |
同一组图跑下来结论很清楚:体积基本由"尺寸 × 帧数"决定,把停留时间拉长几乎不省空间。所以瘦身要先减帧、再缩尺寸,别指望改间隔。这张表也是我现在接到"动图太大"的反馈时第一眼看的东西。
三、我现在做一版动图的流程
- 先把所有图统一宽度。手机直出的 4032×3024 和电脑截图 1440×900 混在一起,合成时画面每帧都会抖一下。我用图片尺寸调整把宽度都锁到 540,勾上等比缩放,高度让它按原比例算。
- 按步骤编号把图传进去,在缩略图上拖一遍顺序。这一步必须在导出前做完——成品出来再想调顺序,等于重做。
- 间隔先按 800ms 跑一遍预览,动作读得清就往下压;压到看不清就退回上一档。我是靠预览反复试出来的,不是靠公式算的。
- 预览时专门盯两处:第一帧和最后一帧接不接得上(循环时会跳一下就很出戏)、有没有误传的近重复图(连拍里两张只差几像素,放着纯属浪费体积)。
- 导出后自己先在手机上用蜂窝网络打开一次,等它完整加载,再决定要不要继续减帧。
四、色彩发灰、字边有脏边怎么办
GIF 只有 256 色调色板,渐变底色和实拍照片特别容易出色带,深色文字边缘还会有一圈灰。我的处理是三步:底色从渐变改成纯色;文字加粗一档、字号往上提;避免把实拍照片当作主体帧,能用线框示意就用线框。如果这篇素材的核心就是色彩(比如调色前后对比),那就不该用 GIF,这不是压缩能救的问题。
五、帧数和间隔:我按动作类型给的数值
以前我是凭感觉设间隔,做完才发现该停的没停、该快的拖沓。现在我在开拍之前就按动作类型把帧数和间隔定死,一套数值如下,都是我一篇篇图文里跑出来的经验区间:
- 手部连续动作(抽拉、翻折、旋盖):8–12 帧,间隔 200ms。少了动作会断,多了体积涨得很快。
- 状态切换(盖子开了、卡扣扣上、指示灯变色):3–5 帧,间隔 400–600ms。这类帧的关键是"结果那一帧"要停够。
- 文字说明卡(一步一句话):一屏 1 帧,间隔 800–1200ms。我试过 500ms,读者普遍反映来不及看完。
- 循环衔接:首尾各留一帧"中性姿势",也就是手退出画面那一帧。少了它,循环时会出现手突然闪现的跳帧。
- 信息量上限:一张动图只讲一件事。要讲两件事我就切成两张,而不是把帧数堆到二十几帧。
这几条里最值钱的是最后一条。我第一版失败的根本原因不是参数没调好,而是想把"折侧壁 + 扣卡扣 + 放内胆"三个动作塞进同一个 4MB 的循环里,读者看到的只是一团抖动。
六、常见疑问
Q:为什么我的GIF文件这么大?
先看尺寸和帧数,别看间隔。720×540 十六帧比 480×360 八帧大出五六倍是完全正常的,因为每一帧都要独立存一份画面。
Q:帧间隔和帧率怎么换算?
间隔是每帧停留多久,250ms 相当于每秒 4 帧,800ms 只有每秒 1.25 帧。教程类动作我一般落在每秒 2 到 5 帧,表情梗可以更快,文字类必须更慢。
Q:动图里的标注文字总是看不清,怎么办?
我的解决办法是别指望间隔来救:合成只管顺序和时长,标注要事先做进画面里,字号直接按成品宽度的 8% 左右给。540 宽的图,标注字号低于 40 像素在手机上就很难读。
Q:手机连拍的照片能直接做成动图吗?
可以,本质就是按顺序播放。两个前提:尺寸要一致,张数要克制。十几张连拍全塞进去,画面差异又小,体积直接翻倍而读者看不出变化。
Q:传错了图或者多传了一张怎么补救?
在预览这一步还能收拾:把多余的拿掉、按编号重排一遍再导出。但成品出来之后就没有"局部修改"这回事了,只能重做,所以我要求自己在上传环节就对着编号核一遍。
Q:成品里有几帧想改怎么办?
与其在动图编辑器里抠帧,不如整段拆开。GIF 拆图能把每一帧导成静态图,改完那两三张再重新合成,成本比想象中低。
Q:素材会上传吗?
不会,合成是在浏览器里完成的。公司里未发布的实拍素材不能出内网,这一点对我们来说是能不能用的前提条件。
那篇图文最后用的是 540×405、十帧、800ms 那一版,1.4MB 左右,留言里终于没人说第三步看不清了。回头看那四轮返工,我第一件该做的其实是定尺寸和定张数,而不是先纠结动画快不快。