Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa PNG Saya dengan Ketelusan Kelihatan Hitam dalam Pygame?

Mengapa PNG Saya dengan Ketelusan Kelihatan Hitam dalam Pygame?

Susan Sarandon
Susan Sarandonasal
2024-10-30 09:49:27607semak imbas

Why Does My PNG with Transparency Appear Black in Pygame?

Cara Menghancurkan PNG dengan Ketelusan dalam Pygame

Apabila cuba memasukkan imej PNG dengan ketelusan ke dalam permukaan, kawasan lutsinar mungkin kelihatan hitam dan bukannya lutsinar. Berikut ialah coretan kod biasa yang menunjukkan isu ini:

<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>

Untuk menyelesaikan isu ini, adalah penting untuk mendayakan ketelusan alfa untuk imej PNG menggunakan kaedah convert_alpha():

<code class="python">treeImage = pygame.image.load("tree.png").convert_alpha()</code>

Dokumentasi Pygame (http://www.pygame.org/docs/ref/image.html) secara khusus menasihati:

"Untuk ketelusan alfa, seperti dalam imej .png gunakan kaedah convert_alpha() selepas memuatkan supaya imej mempunyai ketelusan setiap piksel."

Atas ialah kandungan terperinci Mengapa PNG Saya dengan Ketelusan Kelihatan Hitam dalam Pygame?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn