Skip to main content

一个基于精灵的 PyGame 类,用于使用动画 GIF

项目描述

GIFImage_ext

可用的 GitHub 页面

由 Matthew Roe 编写的 pygame.org 上 GIFImage 库的扩展。

我在这里找到它:http: //pygame.org/project-GIFImage-1039-.html

少量代码 - 添加了几个实例变量和方法。我对 Matthews 代码的改动很少——大部分改动都是添加的,但是在我做出改动的地方,我已经注释掉了原来的那一行,这样就很容易看出那里有什么和现在有什么。

添加的方法:

next_frame()

  • 如果动画正在播放,则暂停动画
  • 如果动画暂停则前进到下一帧
  • 如果当前帧 = 帧[-1],则转到第一帧

previous_frame()

  • next_frame() 的倒数

slow_down()

  • 通过增加“持续时间”变量来减慢播放速度

speed_up()

  • 通过减少“持续时间”变量来提高播放速度

scale(scale_factor)

  • scale_factor 被添加到 image_scale 变量中 - 传递正数以增加图像大小,传递负数以减小大小 gif_image.scale(.05) #将图像大小增加 5% gif_image.scale(-.05) #将图像大小减少 5 % - 在 .render 方法中,如果 img_scale != 1 并且原始图像的宽度和高度乘以 image_scale 值,则在当前帧上调用 pygame.transform.scale (从处理的角度来看会更有效)将所有帧在缩放时复制到新的帧列表中,然后将新列表中的缓存帧用于后续播放循环。不过,这对我的需要来说是多余的。) - 转换后的图像被分配到一个新的表面,即blitted 到屏幕,以便保留原始图像质量

reset_scale()

  • 将 img_scale 值重置为 1

持续存在的问题:

  • 如 pygame.org 网站上所述,仍然存在托盘处理问题。如果时间允许,我会研究一下,但我不是 GIF 图像格式方面的专家,对于大型项目的快速而肮脏的原型来说,这确实是一次性的事情。

贡献

可以在问题菜单中输入错误报告和功能请求。

要询问有关项目的问题,您可以在 Issues 菜单中创建一个带有 ~question 标签的新问题。

要贡献任何更改,只需在 GitHub 上克隆项目: https ://github.com/Jokymon/GIFImage_ext ,将更改推送到您自己的 GitHub 项目并发送拉取请求。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

pygame-animatedgif-0.1.0.tar.gz (7.8 kB 查看哈希

已上传 source

内置分布

pygame_animatedgif-0.1.0-py3-none-any.whl (7.9 kB 查看哈希

已上传 py3