How to draw a transparent image in pygame?

Saurabh Shrivastava picture Saurabh Shrivastava · Feb 21, 2015 · Viewed 7.6k times · Source

Consider a chess board, i have a transparent image of queen(queen.png) of size 70x70 and i want to display it over a black rectangle. Code:

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

pygame.draw.rect(DISPLAYSURF, BLACK, (10, 10, 70, 70))
DISPLAYSURF.blit(queen, (10, 10))

Error: i am not getting transparent image ie black rectangle is not visible at all, only queen with white background. Please suggest

Answer

Leafthecat picture Leafthecat · Feb 21, 2015

Try changing the line where you load in the queen to:

queen = pygame.image.load('queen.png').convert_alpha()