简介
提到 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 能够收费支付集体整顿的各类编程语言学习材料。