导航:首页 > 编程语言 > python制作gif

python制作gif

发布时间:2024-12-07 02:33:08

‘壹’ tkinter读取gif时怎么样知道读到最后

你好,你可以使用python将gif作为二进制文件读进来。下面是具体的流程。
(1)读gif_id,输出gif_id, 6 bytes
(2)读logical_screen_descriptor(结构),并输出
(3)如果 ScrHd.flag_GC_table == 1,
则有全局色表,则读全局色表,并输出
(4)循环,
检查gif块的类型,按块的类型读块,并输出
若:
case: 0x2c -- 它是,Image Descriptor(结构),读块并输出
判断有无色表,有则读块并输出,
下面 1 byte 表示 lZW min Code Size,读并输出
子块 (include size, bytes*size data) 读块并输出
子块 (include size, bytes*size data) 读块并输出
可能有很多子块,读块并输出
直到 0x00 读块并输出,
break;
若case: 0x21 0xf9 -- 控制块,读到 0x00, 并输出
break;
若case: 0x21 0xFe -- 注解块,读到 0x00,并输出
break;
若case: 0x21 0x01 -- 普通文本块,读到 0x00,并输出
break;
若case: 0x21 0xff -- 应用程序块,读到 0x00,并输出
break;
若case: 0x3B -- END 第一个图片完毕的标识,并输出
break;
default: 打印“文件错误”break;

基本你需要读到0x3b那个文件就结束了。

‘贰’ 学生要了解的Ph可视化模块

简单又好用的Python可视化模块强烈推荐!

简单又好用的Python可视化模块

数据可视化动画还在用Excel做?

现在一个简单的Python包就能分分钟搞定!

而且生成的动画也足够丝滑

这是一位专攻Python语言的程序员开发的安装包, 名叫

Pyn imate。

目前可以直接通过PyPI安装使用。

使用指南

想要使用Pyn imate, 直接import一下就行。

输入数据后, Pyn imate将使用函数Barplot() 来创建条形数据动

画。

而创建这种动画, 输入的数据必须是pandas数据结构(如下)

,其中将时间列设置为索引,换句话说索引代表的是自变量。

具体的代码形式如下:

比如要处理具体的数据,写成代码应该是这样子的。

此外, 要制作条形数据动画, Barplot还有三个必需的参数得注

意:data、time_format和ip_freq(Interpolation frequency)。

data就是表格的数据, 这里也就不再赘述。

简单又好用的Python可视化模块

time_format是指数据索引的时间日期格式, 一般为:”%Y-

%m-%d”。

最后是ip_freq, 它是制作动画中比较关键的一步, 通过线性插

值使动画更加流畅丝滑。

一般来说,并不是所有的原始数据都适合做成动画,现在一个

典型的视频是24fps, 即每秒有24帧。

举个栗子,下面这个表格中的数据只有三个时间点,按理说只

能生成3帧视频,最终动画也只有3/24秒。

这时候, ip_freq插值(线性) 就开始发挥作用了, 如果插值是

一个季度,则得出的数据就变成了这样:

简单又好用的Python可视化模块

具体的插值时间间隔为多久,则要视具体的数据而定,一般绘

制大数据时, 设置为ip_freq=None。

至此,就能生成数据动画了,完整代码如下所示:

最后还有一个问题,那就是保存动画,有两个格式可以选择:

gif或者mp 4。

保存为动图一般使用:

简单又好用的Python可视化模块

若要保存为mp 4的话, ffmpeg是个不错的选择, 它是保存为

mp4的标准编写器。

或者

当然, 同样也可以使用Canvas.save() 来保存。



‘叁’ python-tkinter如何打开动图(.gif)

下面所介绍的方法不仅可以显示gif动图,而且可以显示图片

首先引入pyglet包

import pyglet

主方法源码

# 在工作目录中选择一个gif动画文件

ag_file = "111.gif"

animation = pyglet.resource.animation(ag_file)

sprite = pyglet.sprite.Sprite(animation)

# 创建一个窗口并将其设置为图像大小

win = pyglet.window.Window(width=sprite.width, height=sprite.height)

# 设置窗口背景颜色 = r, g, b, alpha

# 每个值从 0.0 到 1.0

green = 0, 1, 0, 1

pyglet.gl.glClearColor(*green)

@win.event

def on_draw():

win.clear()

sprite.draw()

pyglet.app.run()

阅读全文

与python制作gif相关的资料

热点内容
精品php源码 浏览:958
自己编写云服务器抢红包 浏览:201
java解压缩文件加密 浏览:886
dlink打印服务器默认地址 浏览:351
php休眠函数 浏览:371
金蝶如何打开服务器 浏览:764
e4a手游辅助源码 浏览:776
什么app可以实时直播 浏览:105
苹果13的app闪退什么原因 浏览:774
尾盘选股源码公式 浏览:449
php日期运算 浏览:930
天龙八部长歌服务器什么时候开的 浏览:198
鬼泣4模型在那个文件夹 浏览:228
单片机的串行口 浏览:57
phpjson转化为数组 浏览:267
pdf导入excel 浏览:427
苹果xsmax信任app在哪里设置 浏览:52
自动外链php源码 浏览:244
我的世界新手奖励箱命令 浏览:145
linux更新vim 浏览:997