在Python中使用Pygame使图像背景透明时遇到问题
我在运行我们的游戏时遇到了一个比较困惑的问题。我正在用Python的pygame制作一个游戏,并且使用了从网上下载的图片。问题是,有些图片的背景是白色的,有些则是彩色的。我用Photoshop去掉了白色背景,并重新保存了图片。然而,当我在Python中运行模拟时,显示的却是原来的图片和原来的背景。这让我有点困惑。
下面是我用pygame实现图片的代码部分:
self.image = pygame.image.load("jellyfishBad.png").convert()
self.image.set_colorkey(white)
self.rect = self.image.get_rect()
谢谢。
2 个回答
0
加载图片 self.image = pygame.image.load("jellyfishBad.png")
设置颜色键。 self.image.set_colorkey(white)
转换为透明度。 self.image(white).convert_alpha()
先设置颜色键,然后再转换为透明度。
2
在加载图片时,如果你想要每个像素都有透明效果,就需要使用 .convert_alpha() 这个方法。
所以,
self.image = pygame.image.load("jellyfishBad.png").convert_alpha()