Python 制作GIF

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')

在这里插入图片描述

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)

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

在这里插入图片描述

效果图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值