Python 制作GIF

Python 制作GIF

1.找图片

如果没有资源,可以找个视频,然后一帧一帧截图,当然也可以自己画。
Python 制作GIF_第1张图片
可以看到这些图片的名字太长,我们需要给它重命名一下,最好是数字,方便我们以后排序。

2.给文件重命名

这么多文件难道要一个一个改名字吗?
我们使用批量改名字的方法
name_renew.py

from os import listdir, rename
from os.path import splitext, join


def renewName(directory):
    """批量修改指定文件夹中的文件名"""
    i = 1
    """该程序只能运行一次,为了不报错使用异常处理"""
    try:
        for fn in listdir(directory):
            name, ext = splitext(fn)
            newName = ''.join(str(i))
            rename(join(directory, fn), join(directory, newName + ext))
            i += 1
    except :
        pass


renewName(r'D:\pyCharm\pythonProject\after.gif\before.gif')

Python 制作GIF_第2张图片

3.制作GIF

make_gif.py

from os import listdir
from os.path import join, basename
from gif import Image, save

folder = r'D:\pyCharm\pythonProject\after.gif\before.gif'
image_files = [join(folder, fn) for fn in listdir(folder) if fn.endswith('.png')]
image_files.sort(key=lambda fn: int(basename(fn)[:-4]))

frames = []
for fn in image_files:
    frames.append(Image.open(fn))

save(frames, 'fly.gif', duration=0.1, unit='seconds', between='frames', loop=True)

文件路径在这里插入图片描述

Python 制作GIF_第3张图片

效果图

Python 制作GIF_第4张图片

你可能感兴趣的:(python,开发语言)