Pygame - 获取图像像素alpha值

时间:2014-02-07 16:12:14

标签: pygame

我有一个GIF,我想分别读取每个像素以创建准确的碰撞检测。那些GIF包含透明背景。我的代码如下:

for x in range(player_image.get_width()):
    for y in range(player_image.get_height()):
        col = player_image.get_at((x, y))
        print col[3]

问题是每个打印件包含255个值,而在给定图像中,几乎一半的图像是透明的(背景)。所有其他值(红色,绿色,蓝色)都是正确的。那么,我怎样才能读取表面像素的alpha通道值?

1 个答案:

答案 0 :(得分:2)

加载后你可以convert_alpha()你的图片:

player_image = pygame.image.load(...).convert_alpha()

这样你的图像就会有每像素 alpha值。