Вы можете сделать изображение прозрачным поверх другого изображения в Pygame? - PullRequest
2 голосов
/ 24 июня 2011

Я могу установить прозрачность изображения, используя метод set_colorkey и метод convert_alpha на фоне поверхности.Однако, когда я пытаюсь перекрывать два изображения, прозрачность по какой-то причине теряется.

Итак, повторимся, есть ли способ сделать часть изображения прозрачной над другим изображением (например, двумя файлами png или gif)

1 Ответ

0 голосов
/ 24 июня 2011

Я не уверен, что у вас "глючное" поведение или нет.Возможно, альфа с цветовой клавишей не поддерживает то, что вы пытаетесь сделать, и, возможно, вы либо неправильно определяете свои данные пикселов, либо существует какая-то ошибка (видеодрайвер или пигмей), которую вы

Но у меня есть обходной путь:

http://www.pygame.org/docs/ref/surface.html

В Pygame поддерживаются три типа прозрачности: colorkeys, surfaceальфа и пиксельные альфа

Вы можете попробовать пиксельные альфа.Он будет более гибким, чем альфа-цветовой ключ, и должен поддерживать смешивание любого количества слоев.

Вы можете сделать это, передавая SRCALPHA при создании поверхности и гарантируя, что ваши входные данные пикселей имеютправильно определенный альфа-канал.

...