python笔记:如何用pygame在python中导入图片

当前使用python3.8.2

  1. 如何加载一张图片:
pygame.image.load("images/me_destroy_1.png").convert_alpha()

 如果图片背景是透明的用convert_alpha()可以提高程序的运行速度。
 如果图片没有透明的部分,则加convert可以加快程序的运行速度。
 具体可查询pygame的官网https://www.pygame.org/docs/

  1. 如何加载一堆图片,以在游戏中形成一个动画:

先把导入图片,放在一个组里。

destroy_image = []    # 把加载的图片放在一个组里
        destroy_image.extend([
           pygame.image.load("images/me1.png").convert_alpha(),
           pygame.image.load("images/me2.png").convert_alpha(),
           pygame.image.load("images/me3.png").convert_alpha(),
           pygame.image.load("images/me4.png").convert_alpha(),
        ])

然后通过一个索引和在while循环中把动画播出来。

me_destroy_index = 0
screen.blit(i.destroy_images[me_destroy_index], rect)
me_destroy_index = (me_destroy_index + 1) % 4    # 有4张图片
  1. 连起来的图片如何加载:

python笔记:如何用pygame在python中导入图片

方法1,可以用Ps软件把一个个图抠下来,然后在一张张导入

方法2,可以通过寻找相关数据把图片提取出来,首先用电脑自带的画图工具python笔记:如何用pygame在python中导入图片
打开图片 ,得到一个这样的画面python笔记:如何用pygame在python中导入图片

然后找到这些图片中你想要的一张图片,找到图片的最左上角的像素位置 python笔记:如何用pygame在python中导入图片
位置为x=91,y=68,然后在找出所要的图片的长x高y的像素分别为20,20,最后得到一组数据(91,68,20,20)注:左上角的数据在最前面。 然后在while循环中写下screen.blit(me_image, rect,( 91,68,20,20))就可以了,没有一张张抠的麻烦。

上一篇:搭建EFK日志分析系统


下一篇:记录 Vue 中遇见的坑