Python 有没有一种简单的方法可以用Pygame制作和保存动画?

Python 有没有一种简单的方法可以用Pygame制作和保存动画?,python,animation,pygame,save,animated-gif,Python,Animation,Pygame,Save,Animated Gif,我制作了一个非常简单的分形生成器,可以打印出每一步;我想把它放在我做的演讲中。我用来做演示的工具显然不支持pygame,有没有办法将其保存为视频?最好是动画.gif或类似格式。不直接使用。但是,您可以使用许多可用的实用程序之一保存程序的屏幕广播 我不知道Windows或OSX,但如果你在Ubuntu或其他基于gnome的桌面上,你可以使用gnome shell内置功能(标准键绑定是Control+Shift+Alt+R)或伊斯坦布尔(更多信息) 如果你不在Ubuntu上,谷歌screencast

我制作了一个非常简单的分形生成器,可以打印出每一步;我想把它放在我做的演讲中。我用来做演示的工具显然不支持pygame,有没有办法将其保存为视频?最好是动画.gif或类似格式。

不直接使用。但是,您可以使用许多可用的实用程序之一保存程序的屏幕广播

我不知道Windows或OSX,但如果你在Ubuntu或其他基于gnome的桌面上,你可以使用gnome shell内置功能(标准键绑定是
Control+Shift+Alt+R
)或
伊斯坦布尔
(更多信息)

如果你不在Ubuntu上,谷歌
screencast
应该会有所帮助


编辑:如果您保存了视频,您可以使用其他实用程序轻松转换其格式。是关于如何将ogv(linux屏幕播放的标准输出)转换为动画gif的操作指南。

不直接转换。但是,您可以使用许多可用的实用程序之一保存程序的屏幕广播

我不知道Windows或OSX,但如果你在Ubuntu或其他基于gnome的桌面上,你可以使用gnome shell内置功能(标准键绑定是
Control+Shift+Alt+R
)或
伊斯坦布尔
(更多信息)

如果你不在Ubuntu上,谷歌
screencast
应该会有所帮助

编辑:如果您保存了视频,您可以使用其他实用程序轻松转换其格式。是一个如何将ogv(linux屏幕播放的标准输出)转换为动画gif的操作指南。

--用于制作动画gif的python包

我最近第一次使用它(与pygame结合使用),因此这不能保证是最佳实践,但它确实有效

--

更新:随着时间的推移,我决定images2gif.py是平庸的(生成不必要的大文件)和不可靠的(有时随机加载和运行失败)。我的新偏好是使用子流程调用imagemagick

--用于制作动画GIF的python包

我最近第一次使用它(与pygame结合使用),因此这不能保证是最佳实践,但它确实有效

--


更新:随着时间的推移,我决定images2gif.py是平庸的(生成不必要的大文件)和不可靠的(有时随机加载和运行失败)。我的新偏好是使用子流程调用imagemagick

实际上是薄荷。Pet peeve:假设任何使用linux的人都在使用ubuntu。@GLycan-…我实际上写了“…或其他基于gnome的桌面!”(实际上,我想的是Fedora,而不是Mint…),但我很高兴你发现我的答案很有用。:)还忘了提到(但也许你知道这一点):GnomeShell不是标准的Ubuntu/Mint桌面,如果你想使用这种方法,你需要在那种模式下安装和登录。如果你在Fedora上,gnome外壳是默认的实际上是薄荷。Pet peeve:假设任何使用linux的人都在使用ubuntu。@GLycan-…我实际上写了“…或其他基于gnome的桌面!”(实际上,我想的是Fedora,而不是Mint…),但我很高兴你发现我的答案很有用。:)还忘了提到(但也许你知道这一点):GnomeShell不是标准的Ubuntu/Mint桌面,如果你想使用这种方法,你需要在那种模式下安装和登录。如果你在Fedora上,gnome外壳是默认的您可以使用pygame.image.save()重复保存屏幕,然后使用脚本将其转换为gif。您可以使用pygame.image.save()重复保存屏幕,然后使用脚本将其转换为gif。很好,我不知道+1给我!:)在环顾四周寻找使用Python生成动画GIF的方法之后,我现在同意您建议的使用subprocess和ImageMagick的方法是最好的方法。我在这里举了一个更简单的例子:很好,我不知道+1给我!:)在环顾四周寻找使用Python生成动画GIF的方法之后,我现在同意您建议的使用subprocess和ImageMagick的方法是最好的方法。我在此提供了一个更简单的示例: