GIF 文件体积怎么控制 参数组合影响大小
为什么体积会变
GIF 文件大小由三个因素决定:
- 像素总数:output size 从 128px 升到 256px,像素量翻四倍,文件可能不止翻倍
- 总帧数:speed 越快,动画循环越快,GIF 包含的总帧数就越多
- 每帧复杂度:squish 越大、变形越复杂,压缩率越低,文件越大
三参数影响程度排序
| 参数 | 对体积的影响 | 原理 |
|---|---|---|
| output size | ⭐⭐⭐⭐⭐ 最大 | 直接决定像素总量 |
| speed | ⭐⭐⭐ 中等 | 决定总帧数 |
| squish | ⭐⭐ 较小 | 影响每帧复杂度 |
目标体积 2MB 以内的推荐参数
要保证微信/QQ 能正常显示动态,建议导出时参考以下组合:
| 参数 | 推荐值 | 说明 |
|---|---|---|
| output size | 128px | 标准表情尺寸 |
| speed | 15-20 | 中等节奏,帧数不会太多 |
| squish | 20-30 | 变形适中,压缩率好 |
这个组合下大多数 GIF 体积在 500KB-1.5MB 之间,聊天平台都能正常显示。
导出后还是太大怎么办
如果已经导出了 128px 的 GIF 还是超过 2MB:
- 先看预览——是不是 speed 设得特别高(30+)导致帧数太多?往回调一些
- squish 是不是拉得太狠?降回到中等水平
- 以上都调了还是大,说明素材本身颜色太丰富(比如彩色照片),GIF 格式压缩率有限——只能进一步降低 output size
工具本身不能压缩 GIF
Petpet Generator 只负责生成,不内置压缩功能。如果需要进一步压缩,用第三方工具(比如 ezgif、GIF Compressor),但压缩可能导致颜色损失或帧丢失。