先看一下效果图:
首先 ,调用一个 python 库 imageio 可以轻松实现 ,第一步当然是 pip 安装呀~
pip install imageio
安装之后 ,其实大体分为三个步骤 :
读取静态图到列表中 ,作为 GIF 动图的每一帧
设置输入(静态图)、输出(GIF 动图)和必要的参数 ,这里设置每一帧间隔时间 duration 为 0.35 秒 (具体值你高兴就好啦)
然后调用 imageio 库的函数 imageio.mimsave 即可 。
PS :这里增加代码可读性 ,把 imageio.mimsave 和相关参数包装到一个函数内 。
整体代码如下:
# _*_ coding:utf-8 _*_
import imageio
def create_gif(image_list, gif_name, duration=0.35):
frames = []
for image_name in image_list:
frames.append(imageio.imread(image_name))
imageio.mimsave(gif_name, frames, 'GIF', duration=duration)
return
def main():
image_list = ['cat/1.png', 'cat/2.png', 'cat/3.png', 'cat/4.png', 'cat/5.png', 'cat/6.png']
gif_name = 'cat/cat.gif'
duration = 0.35
create_gif(image_list, gif_name, duration)
if __name__ == '__main__':
main()
再也不用因为不会做动态图难过了,喜欢的拿走不蟹