我正在寻找一种将动画 GIF 分解成组成它的图像的方法,并发现许多帖子推荐:
convert -coalesce Dijkstra_Animation.gif djik.png
我运行了此命令但失败了。它只生成一个文件(djik.png
),虽然它的扩展名是.png
,但它实际上是输入 GIF... 出了什么问题?如何将多帧 GIF 分解为各个帧?
答案1
正确的命令应该是:
convert animated.gif output.png
这将创造输出-0,输出-1,输出-2等,针对动画 gif 的每一帧。
附注:根据 GIF 的处理方式,您可能会或可能不会获得“完整”帧。有些 GIF 的帧仅包含部分数据。这些是您将用来-coalesce
重建每个单独帧的 GIF 类型,即
convert -coalesce animated.gif output.png
话虽如此,你还是需要再检查一下你拥有的文件是否确实是动态 GIF。有趣的是,我曾经有过这样的经历giphy.com转换过程中出现明显错误(他们将“GIF”存储为视频)导致只下载了一帧,尽管它仍被赋予了 .gif 扩展名。