透明度のある PNG が Pygame で黒く表示されるのはなぜですか?

Susan Sarandon
リリース: 2024-10-30 09:49:27
オリジナル
624 人が閲覧しました

Why Does My PNG with Transparency Appear Black in Pygame?

Pygame で透明度のある PNG をブリットする方法

透明度のある PNG 画像をサーフェスに組み込もうとすると、透明な領域が透明ではなく黒く見えます。この問題を示す一般的なコード スニペットを次に示します:

<code class="python">screen = pygame.display.set_mode((800, 600), pygame.DOUBLEBUF, 32)

world = pygame.Surface((800, 600), pygame.SRCALPHA, 32)
treeImage = pygame.image.load("tree.png")

world.blit(treeImage, (0, 0), (0, 0, 64, 64))
screen.blit(world, pygame.rect.Rect(0, 0, 800, 600))</code>
ログイン後にコピー

この問題を解決するには、convert_alpha() メソッドを使用して PNG 画像のアルファ透明度を有効にすることが重要です:

<code class="python">treeImage = pygame.image.load("tree.png").convert_alpha()</code>
ログイン後にコピー

具体的には、Pygame のドキュメント (http://www.pygame.org/docs/ref/image.html)アドバイス:

「.png 画像のようなアルファ透明度については、読み込み後に Convert_alpha() メソッドを使用して、画像がピクセルごとの透明度を持つようにします。」

以上が透明度のある PNG が Pygame で黒く表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!