Mac终端 - 从png文件创建动态gif

30

我有一堆以1.png,2.png等命名的png文件,并希望从它们创建一个动态gif图像。我没能找到终端命令的解决方案,将这些png文件转换成单个动画gif。

有人可以发布一些我可以尝试的命令吗?我已经尝试过“convert”命令,但我的终端总是说找不到convert,即使我已经安装了ImageMagik。


1
如果你(相当)确定 convert 应该在你的系统中某个地方,请尝试 whereis - Jongware
2个回答

50

convert *.png screens.gif

这个答案 建议使用 brew install ImageMagick 安装 convert


你可以使用AutomatorFinder上下文菜单中运行这个:https://jacobsalmela.com/2015/11/02/make-animated-gifs-in-os-x-with-a-right-click/ - Heath Borders
4
这不会改变你的框架顺序。 - Tarantula
非常感谢!我不知道我可以这么轻松地转换文件。 - Luis Mata B.

33

ImageMagick的convert命令对此非常有效,但您需要按正确顺序列出文件名。如果数字没有前导零,则使用*.png会混淆帧的顺序,因为排序是按字母顺序排列的:

1.png  10.png  11.png  2.png  3.png  ...

如果您使用zsh,您可以简单地使用glob qualifier:

convert *.png(n) out.gif
否则,您可以对ls输出进行排序。
convert $(ls *.png | sort -V) out.gif

如果您的文件名有前导零,请使用*.png。请注意,默认帧之间的延迟很小,因此根据您的用例,帧速率可能太快。要更改它,请使用-delay选项,例如:

convert -delay 50 *.png out.gif

这将把FPS设置为100/50 = 2帧每秒。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接