Neatbo.

恢复 GIF 全部显示帧

将 GIF 每个完整显示帧导出为 PNG,并保留原始延时、disposal、色表、循环声明与完整出处清单。

恢复帧前先选择画布背景

Tim 希望获得 GIF 各帧图像。T329 导出每个完整合成显示帧,而不只保存 GIF 中的小矩形补丁。选择原件后先确定背景政策再运行。

透明画布从透明开始,disposal2 将补丁区域清为透明。GIF 背景使用全局色表的背景色且不透明;没有全局色表时使用透明。此选择可能改变存储补丁外的像素。

保留全部帧与完整证据

下载 gif-frames.zip。受控编号路径保留顺序,区分延时或像素相同的帧。结果表分页展示全部帧,ZIP 还保存完整色表、补丁偏移、GCE 字段和原始评论。

完整交付件
产物用途保留范围
original.gif保留来源每个原始字节
frames/frame-NNNN.png编辑完整显示帧所选政策下完整逻辑画布 RGBA
gif-frames.json核对全部声明全部色表、控制字段、偏移与散列
gif-frames.csv检查每一帧完整公式安全行

准确理解原始时间与 disposal

透明补丁像素不覆盖已有画面。Disposal0/1 保留,2 清除补丁矩形,3 恢复前画布。Disposal0 的 retain 选择不同于继承上个非0 disposal 的读取器。

每张 PNG 都是完整逻辑画布的 RGBA8,不经 Canvas 缩放或色彩变换。Alpha0 的隐藏 RGB 统一为零。原始延时按百分之一秒保留,包括零;不推断播放器最小延时、页面背景或全部查看器 RGBA。

使用具体示例

一份 8505 字节、61×47 的真实 Pillow 字典压缩 GIF。 8 张 PNG 显示帧、22936 累计像素、28 个原始百分之一秒、循环声明2,共11个 ZIP 成员。

明确的混合3→0→1原件由独立补丁解码和画布合成核对。其 retain 政策不同于 Pillow 整动画的 disposal 继承,不宣称与所有查看器相同。

同时应用所有预算并从拒绝中恢复

一份 GIF87a/89a,最多 10 MiB、500 帧,逻辑宽高各最多 2048,累计完整显示像素最多 16777216。小补丁也按整个逻辑画布计每帧像素。

一个 ZIP 包含 original.gif、全部 frames/frame-NNNN.png、gif-frames.json 和公式安全 gif-frames.csv。JSON/CSV 合计最多 4 MiB;100 MiB ZIP 防护上限受更严格的原件、像素和报告预算支配,不是可单独达到的输出承诺。

畸形、不支持或超过预算的输入不产生下载。取消会丢弃未完成产物。修正输入或选择支持的原件后重新运行;可以再次使用同一选中文件。

  • 不跳过畸形帧,不交付部分 ZIP。
  • 不上传、不预解码图像、不执行源元数据。
  • 后续缩放、时序编辑或元数据清理时仍保留原件。

参考资料

  • Tim / 原始 GIF 帧提取问题

    完整问题、回答及两类评论已核对。Corey 的网页分帧使用自述独立署名;没有作者 GIF 原件、地区、市场规模或播放时序证据。

  • GIF89a 规范

    用于核对色表、LZW、图形控制、交错与 disposal。透明画布和 disposal0 retain 是明确导出选择,不代表全部查看器行为。

本分类工具使用说明

展开工具,查看操作步骤、可调选项和支持范围,再直接进入工作区。

提取 GIF 全部显示帧按明确背景政策将 GIF 每个合成显示帧恢复为完整画布 PNG,保留原始延时、disposal、原件和完整 JSON/CSV ZIP。

选择一份已有 GIF 和画布背景,恢复每个完整合成显示帧。全部 PNG、原始延时和 disposal 声明连同原件保存在完整 ZIP。

操作步骤

  1. 选择一份 GIF 原件并保留备份。
  2. 选择透明画布或 GIF 背景色。
  3. 运行后检查全部补丁、disposal 和原始延时行。
  4. 下载 ZIP 并打开完整画布 PNG;用 JSON/CSV 核对全部记录与散列。

可调选项

导出画布背景
透明画布 · GIF 背景色

能力与限制

  • 一份 GIF87a/89a,最多 10 MiB、500 帧,逻辑宽高各最多 2048,累计完整显示像素最多 16777216。小补丁也按整个逻辑画布计每帧像素。
  • 支持全局/局部色表、普通/四遍交错图像、完整 LZW、disposal0/1/2/3 及一份 NETSCAPE2.0 循环声明。原始评论字节完整保存在 JSON 的十六进制字段。
  • 透明画布从透明开始,disposal2 将补丁区域清为透明。GIF 背景使用全局色表的背景色且不透明;没有全局色表时使用透明。此选择可能改变存储补丁外的像素。
  • 透明补丁像素不覆盖已有画面。Disposal0/1 保留,2 清除补丁矩形,3 恢复前画布。Disposal0 的 retain 选择不同于继承上个非0 disposal 的读取器。
  • 每张 PNG 都是完整逻辑画布的 RGBA8,不经 Canvas 缩放或色彩变换。Alpha0 的隐藏 RGB 统一为零。原始延时按百分之一秒保留,包括零;不推断播放器最小延时、页面背景或全部查看器 RGBA。
  • Plain Text、未知扩展/application、用户输入/保留标志、disposal4–7、非法色表索引、畸形 LZW、截断与尾随垃圾都整体拒绝,不交付部分 ZIP。
  • 一个 ZIP 包含 original.gif、全部 frames/frame-NNNN.png、gif-frames.json 和公式安全 gif-frames.csv。JSON/CSV 合计最多 4 MiB;100 MiB ZIP 防护上限受更严格的原件、像素和报告预算支配,不是可单独达到的输出承诺。
  • 文件只在本地处理,不上传、不抓取 URL、不执行用户内容。请保留原件:这是图像恢复,不是元数据清理、动画编辑或通用 GIF 验证。
打开提取 GIF 全部显示帧 →