Maison > développement back-end > Tutoriel Python > Pourquoi mon PNG transparent devient-il noir dans Pygame et comment puis-je y remédier ?

Pourquoi mon PNG transparent devient-il noir dans Pygame et comment puis-je y remédier ?

Susan Sarandon
Libérer: 2024-10-30 20:17:30
original
1060 Les gens l'ont consulté

Why does my transparent PNG blit as black in Pygame, and how can I fix it?

Blitting des images PNG avec transparence dans Pygame

Question :

Tentative de blit un PNG l'image sur une surface fait apparaître la partie transparente en noir. Voici le code simplifié à l'origine du problème :

<code class="python">import pygame

# ...

treeImage = pygame.image.load("tree.png")

# ...</code>
Copier après la connexion

Pourquoi la transparence devient-elle noire et comment peut-elle être résolue ?

Réponse :

Selon la documentation de Pygame, pour la transparence alpha dans les images PNG, la méthode convert_alpha() doit être appelée après le chargement de l'image. Cela garantit que l'image a une transparence par pixel.

Pour résoudre le problème, ajoutez simplement la ligne suivante après avoir chargé l'image :

<code class="python">treeImage.convert_alpha()</code>
Copier après la connexion

Cela convertira l'image dans un format prenant en charge transparence par pixel, permettant d'afficher correctement les zones transparentes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal