使用python把gif转为图片

使用python把gif转为图片

  • 程序思路
  • 效果
  • 代码

程序思路

  1. 打开 GIF 文件。
  2. 确保输出文件夹存在,如果不存在则创建。
  3. 获取 GIF 的帧数。
  4. 遍历每一帧,将其保存为单独的 PNG 图像,并打印保存路径。

效果

把这张派大星gif转为一张张图片:

代码

python 复制代码
from PIL import Image
import os


def gif_to_images(gif_path, output_folder):
    # 打开 GIF 文件
    gif = Image.open(gif_path)

    # 确保输出文件夹存在
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)

    # 获取 GIF 的帧数
    frame_count = gif.n_frames

    for frame in range(frame_count):
        # 设置当前帧
        gif.seek(frame)

        # 将当前帧保存为图像
        frame_image_path = os.path.join(output_folder, f"frame_{frame}.png")
        gif.save(frame_image_path, "PNG")
        print(f"Saved {frame_image_path}")


if __name__ == "__main__":
    gif_path = "QTQBAP2Q.gif"  # 替换为你的 GIF 文件路径
    output_folder = "gif_png"  # 替换为你想保存帧图片的文件夹路径

    gif_to_images(gif_path, output_folder)
相关推荐
ShineWinsu4 小时前
对于C++:继承的解析—上
开发语言·数据结构·c++·算法·面试·笔试·继承
小付同学呀4 小时前
C语言学习(五)——输入/输出
c语言·开发语言·学习
梦幻精灵_cq4 小时前
学C之路:不可或缺的main()主函数框架(Learn-C 1st)
c语言·开发语言
哈里谢顿5 小时前
Django 应用 OOM(Out of Memory)故障的定位思路和排查方法
python·django
消失的旧时光-19435 小时前
C++ 多线程与并发系统取向(二)—— 资源保护:std::mutex 与 RAII(类比 Java synchronized)
java·开发语言·c++·并发
甄心爱学习5 小时前
【python】获取所有长度为 k 的二进制字符串
python·算法
福大大架构师每日一题6 小时前
go-zero v1.10.0发布!全面支持Go 1.23、MCP SDK迁移、性能与稳定性双提升
开发语言·后端·golang
tuotali20266 小时前
氢气压缩机技术规范亲测案例分享
人工智能·python
嫂子的姐夫6 小时前
030-扣代码:湖北图书馆登录
爬虫·python·逆向
五阿哥永琪6 小时前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言