Python 技术篇-3行代码实现Gif动画生成,Gif动画素材获取方法

我们需要用到 imageio 库,直接pip install imageio就安装了。
原理就是把很多个图片在规定时间内依次展示,就变为我们所见到的动画样式了。

收集素材

利用 PIL 的截图功能,每 0.1 秒截个图,共 10 秒,一共 100 张。
因为原图太大了,我们用 resize() 修改一下图片尺寸,使图片小一点。

from PIL import ImageGrab
from PIL import Image

for i in range(0,100):
    time.sleep(0.1)
    img = ImageGrab.grab()
    width = img.size[0]
    height = img.size[1]
    img = img.resize((int(width*0.3), int(height*0.3)), Image.ANTIALIAS)
    img.save("grab\\hello"+str(i)+".jpg")

素材展示:
Python 技术篇-3行代码实现Gif动画生成,Gif动画素材获取方法_第1张图片

Gif制作

fps 就是图片切换的频率,越大越快。
gif_images 就是图片素材集,通过 imread() 读取本地的图片后依次加入进来。

import imageio

gif_images = []
for i in range(0, 100):
    gif_images.append(imageio.imread("grab\\hello"+str(i)+".jpg"))   # 读取图片
imageio.mimsave("hello.gif", gif_images, fps=5)   # 转化为gif动画

运行效果图:

喜欢的点个赞❤吧!

你可能感兴趣的:(python,python库,实用技术)