GIF 拆帧与合并
把几张图片合成一个 GIF 动图,或者把 GIF 拆成一张张图片。两种来源都放进同一个帧列表,你可以改每一帧的延时、调整顺序、删掉不要的帧,再生成新的 GIF,或把所有帧连同延时清单打包成 ZIP。全部在你的浏览器里处理,不上传。
限制与注意
- 帧数最多 200;单帧最多 1600 万像素;输出或拆出的“宽 × 高 × 帧数”总像素最多 1.2 亿;GIF 文件最大 50 MB。超过时会明确提示,不会卡死。
- GIF 一个画面最多 256 种颜色,合成时每帧会重新选出最合适的 256 色,渐变和照片会有色阶和颜色偏差,这是 GIF 格式本身的限制。
- GIF 的延时精度是 1/100 秒,低于 20 毫秒的延时浏览器通常会按更慢的速度播放,所以本页最小延时是 20 毫秒。拆出的 GIF 如果某帧延时写成 0 或 1(1/100 秒),按浏览器的习惯算 100 毫秒。
- GIF 里的透明只有“全透明”和“不透明”两种,半透明的边缘会被取舍成其中一种。
- 各帧尺寸不同时,以第一帧(或你填的输出宽度)为准,其它帧等比缩放后居中放入,多出的空白为透明(或白色)。
- 拆帧得到的是“每一帧完整的画面”:局部帧会按 GIF 的处置方式叠加到前面的画面上,不是只截取那一小块。
- GIF 里“绘制后还原为背景”的帧:该帧有透明色时还原为透明,没有透明色时按 GIF 规范还原为背景色(与 Pillow 的做法一致);个别浏览器在后一种情况会显示成透明,所以极少数 GIF 拆出的帧和网页里看到的画面会略有不同。第一帧没盖住的画面部分按透明处理,处置方式写 0(未指定)的按“不处理”。
- 选图片添加时,GIF 文件只取第一帧;要拆整个 GIF,请用“选一个 GIF 文件拆帧”。动图的循环次数不会带入列表,合成时可选“无限循环”或“只播放一次”。
1. 添加图片或 GIF
2. 帧列表
3. 生成或导出
使用方法
- 合成:在“添加图片”里选多张图片(可一次多选),它们会按顺序成为帧。可以再添加更多。
- 拆帧:在“选一个 GIF 文件拆帧”里选一个 GIF,每一帧会按完整画面拆出来,加到帧列表。
- 在帧列表里改每一帧的延时(毫秒)、用“上移/下移”调整顺序、用“删除”去掉不要的帧。
- 点“生成 GIF”得到动图;点“导出帧(ZIP)”得到每帧的 PNG 和一个 delays.csv(每帧的延时,单位毫秒)。
常见问题
图片会被上传吗?
不会。拆帧、合成都在你的浏览器里完成。
为什么合成的 GIF 颜色不如原图?
GIF 每个画面最多 256 色,这是格式限制。色彩丰富的照片会损失一些细节。
延时怎么填?
单位是毫秒。100 毫秒就是每秒 10 帧。
怎么把一个 GIF 里不要的帧去掉?
先拆帧,删掉不要的帧,再点“生成 GIF”。
ZIP 里有什么?
每帧一张 PNG(frame-001.png 这样编号),以及 delays.csv 记录每一帧的延时(毫秒)。