【Python实战】斗罗大陆GIF生成工具分享

博主:ifeinaifeina 09-27 33

导语?

【Python实战】斗罗大陆GIF生成工具分享

??

?

?嘿!大家好,我是木木子!今天给大家带来一个好玩儿的Python小程序,希望大家喜欢,记得点点关注啦~

有没有什么内容形式,比小视频更小,比普通图片更丰富????

【Python实战】斗罗大陆GIF生成工具分享

?

有!?

GIF动态图就是其中一种形式,而且,必不可少。

【Python实战】斗罗大陆GIF生成工具分享

?

GIF动态图应该是早已充斥了互联网,被大家玩得不亦乐乎,大伙早就不能接受文章中的纯文字或

静态图片,这些早已经不能表现大家心里所想。唯有动态图,才能表达体内的洪荒之力。

?哈哈哈,今天的话木子以斗罗大陆为例子,教大家制作几款不同人物风格的GIF动图!

(话说这国漫大家应该都看过哈,疯狂追漫中——就是更新忒慢了点儿!安利安利,虽然慢但目前

也有100多集了,可以去看康吖~)

【Python实战】斗罗大陆GIF生成工具分享

?

正文

? ? ? ? ? ?

【Python实战】斗罗大陆GIF生成工具分享

?他为了她,可以付出自己的生命,自杀取骨。她为了他,可以燃烧自己的生命,献祭魂环。

——唐家三少《斗罗大陆》

?一、简单的GIF制作

1)准备中

1.1 简单的动图制作涉及的环境如下:

Python3、Pycharm、Pillow模块。

模块安装:

pip install +模块名 或pip install -i https://pypi.douban.com/simple/ +模块名

1.2 素材准备

第一组:小舞3张图。

【Python实战】斗罗大陆GIF生成工具分享

?

第二组:宁荣荣8张图。

【Python实战】斗罗大陆GIF生成工具分享

2)小简介

PIL最重要的类是 Image你可以从文件加载图像,或者处理其他图像, 或者从 scratch 创建。

从文件加载图像 通过 Image 模块的 open() 函数。

3)代码演示

就是连续的图片打开形成的gif图。(效果动态视频的话都放在最后面的哈)

from PIL import Imageim = Image.open("1.jpg")images = []images.append(Image.open('xx'))images.append(Image.open('xx'))images.append(Image.open('xx')).......想放多少放多少......im.save('gif.gif', save_all=True, append_images=images, loop=1, duration=1, comment=b"aaabb")

二、升级imageio的GIF制作

1)准备中

1.1 简单的动图制作涉及的环境如下:

Python3、Pycharm、imageio模块。

模块安装:

pip install +模块名 或pip install -i https://pypi.douban.com/simple/ +模块名

1.2 素材准备

第一组:小舞30张图。

【Python实战】斗罗大陆GIF生成工具分享

?

第二组:朱竹清戴沐白37张图。

【Python实战】斗罗大陆GIF生成工具分享

?

2)小简介

IMAIO是一个Python库,它提供了一个简单的接口来读取和写入大量的图像数据,包括动画图像、

体积数据和科学格式。它是跨平台的,运行在Python 2 .x和3。x上,并且易于安装。

imageio.imread() #从指定的文件读取图像。返回一个NUMPY数组,该数组带有元数据的元属

性。注意,图像数据按原样返回,并且可能不总是具有uTI8的dType

(因此可能不同于例如PIL返回)。

3)代码演示

首先读取静态图到列表,作为GIF的每一帧;接着设置输入(静态图)、输出(动态图)和一些必要

参数,我们这里设置每一帧间隔时间为xx秒,默认是1秒,之后调用miageio.mimsave函数去保存

结果。(效果动态视频的话都放在最后面的哈)

import imageiodef create_gif(image_list, gif_name, duration = 1.0):    '''    :param image_list: 这个列表用于存放生成动图的图片    :param gif_name: 字符串,所生成gif文件名,带.gif后缀    :param duration: 图像间隔时间    :return:    '''     frames = []    for image_name in image_list:        frames.append(imageio.imread(image_name))    imageio.mimsave(gif_name, frames, 'GIF', duration=duration)    returndef main():    #这里放上自己所需要合成的图片    image_list = ['xx', 'xx', 'xx']  #可放多张的哈    gif_name = 'new.gif'  #合成gif图名称可修改    duration = xx  #每一帧间隔时间为xx秒    create_gif(image_list, gif_name, duration)if __name__ == '__main__':    main()

?三、总效果展示

【Python实战】斗罗大陆GIF生成工具分享

安利一款制作GIF的小程序:原来可以这么简单啊~

?

? ? ? ? ? ?

总结

每一个小技巧都值得被认真对待!希望对你有帮助。

完整的免费源码领取处:

如需完整的项目源码+素材源码基地见:#私信小编06#即可获取免费的福利!

往期推荐推荐——

项目1.0 烟花玫瑰(内含多份源码)

Python表白代码:“ 星光月夜烟花皆归你,我也归你”(满天烟花盛开、附番外玫瑰)

项目1.1 恋爱指南(内含多份源码)

【Python恋爱指南】二款甜度爆表的小程序出炉—还怕找不到对象嘛?

项目1.0 漫天飞雪小程序

Python小程序:你看?这千年难遇的雪景——简直“美到犯规”【满屏雪花飞舞】

项目3.2 自动换壁纸

【Python高级技能】超炫酷,电脑每天自动换壁纸,这个神器适合你。

文章汇总——

项目1.0 Python—2021 |已有文章汇总 | 持续更新,直接看这篇就够了

(更多内容+源码都在文章汇总哦!!欢迎阅读~)

?

【Python实战】斗罗大陆GIF生成工具分享

?

??

The End

本站内容搜集自互联网,版权归原作者所有。如有侵权,请来信告知,我们将删除相关内容。