简介
提到 GIF,大家应该都比拟相熟,它与 JPG、PNG 等文件格式一样,可用于制作动态图像,然而 GIF 格局还具备一项独有技能:能够用于创立动静图像。
不知大家有没有想过:如果将 GIF 倒放会是一种怎么样的现象?本文咱们就用 Python 来实现一下 GIF 倒放。
实现
咱们能够将 GIF 看作是由若干张动态图片组成的,要实现倒放,咱们只须要将 GIF 分解成一张张动态图片,而后再将这些动态图片倒序合成为 GIF 即可。
倒放的实现须要用到 Pillow 模块,装置应用 pip install pillow
即可,代码的实现也比较简单,如下所示:
# 读取 GIF
im = Image.open("1.gif")
# GIF 图片流的迭代器
iter = ImageSequence.Iterator(im)
index = 1
# 遍历图片流的每一帧
for frame in iter:
print("image %d: mode %s, size %s" % (index, frame.mode, frame.size))
frame.save("./images/img%d.png" % index)
index += 1
# 把 GIF 拆分为图片流
imgs = [frame.copy() for frame in ImageSequence.Iterator(im)]
# 图片流反序
imgs.reverse()
# 将反序后的所有帧图像保留下来
imgs[0].save("reverse.gif", save_all=True, append_images=imgs[1:])
最初,咱们来一起看一下实现成果。
欢送微信搜寻 Python 小二 ,第一工夫浏览、获取源码,回复关键字 1024 能够收费支付集体整顿的各类编程语言学习材料。