如何在pygame中绘制透明图像?

Sau*_*ava 4 python pygame pygame-surface

考虑一个国际象棋棋盘,我有一个大小为 70x70 的皇后(queen.png)的透明图像,我想将它显示在一个黑色矩形上。代码:

BLACK=(0,0,0)
queen = pygame.image.load('queen.png')

pygame.draw.rect(DISPLAYSURF, BLACK, (10, 10, 70, 70))
DISPLAYSURF.blit(queen, (10, 10))
Run Code Online (Sandbox Code Playgroud)

错误:我没有得到透明图像,即黑色矩形根本不可见,只有白色背景的皇后。请建议

小智 5

尝试将您在皇后中加载的行更改为:

queen = pygame.image.load('queen.png').convert_alpha()
Run Code Online (Sandbox Code Playgroud)