如何将动画 .gif 文件分割为其组成帧?

如何将动画 .gif 文件分割为其组成帧?

如何轻松分割动画 .gif 文件?我想查看每一帧。

我真的不想将每一帧都导出到目录中。如果可能的话,我想在一个应用程序中单独查看它们。

这在 Linux 上可以实现吗?

答案1

尝试使用 The Gimp 打开它们;我相信它将打开每帧一层的动画 gif。

你说你不想将所有帧转储到目录中的文件中,但无论如何我都会告诉你如何去做:)安装 ImageMagick 或 graphicsmagick,然后:

对于 ImageMagick:

convert animation.gif target.png

对于 graphicsmagick:

gm convert animation.gif target.png

它会将框架写入 target0.png、target1.png 等。然后您可以进入目录并运行eog,它会显示同一应用程序上的所有框架。当您不再需要这些框架时,只需rm target*.png

答案2

如果各个帧都有透明区域并且相互构建,则可以使用convert带有“ -coalesce”选项的命令来生成一组文件 target-0.png、target-1.png 等,每个文件都合并了前面图像的序列:

convert -coalesce animation.gif target.png

答案3

对于我来说,ImageMagick(版本信息6.8.9-9 Q16 x86_64 2017-07-31:)

convert gif.gif gif.pdf

制作一个 pdf,每页都是输入 gif 的一个框架,然后你就可以在所选的 pdf 查看应用程序中翻阅这些框架

答案4

使用 mpv 。在桌面上打开它。将 gif 拖入其中。使用 s 键截取您想要的/单帧的屏幕截图。如果您的 gif 很快,您甚至可以暂停。非常快捷的方式。

===========

您可能需要先使用这些设置[设置后无需重复设置]

gedit ~/.config/mpv/mpv.conf

并输入并保存:

--screenshot-format 选择:jpg jpeg png(默认:jpg)

为了获得最高的 png 质量:

--screenshot-format=png
--screenshot-png-compression=9

或者如果你想要 jpg

--screenshot-jpeg-quality 整数(0 至 100)(默认值:90)

用于mpv --list-options 其他详细信息

相关内容