在pygame中如何使一张图像在另一张图像上透明?
我可以通过使用 set_colorkey
方法和 convert_alpha
方法来让一张图片在背景上变得透明。不过,当我试着把两张图片重叠在一起时,透明效果却消失了,不知道为什么。
所以我想再问一遍,有没有办法让一张图片的某部分在另一张图片上变得透明(比如两张 png 或 gif 文件)?
1 个回答
0
我不太确定你遇到的情况是“有问题”的行为还是其他什么。可能是你想做的事情不支持颜色键透明,也可能是你定义像素数据的方式不对,或者你遇到了某种错误(比如视频驱动或pygame的问题)。
不过,我有一个解决办法给你:
http://www.pygame.org/docs/ref/surface.html
Pygame支持三种透明方式:颜色键、表面透明和像素透明。
你可以试试像素透明。这种方式比颜色键透明更灵活,应该可以支持你想要的多层混合效果。
你可以在创建表面时传入 SRCALPHA
,并确保你的输入像素数据有正确的透明通道定义。