我有一个 pygame Surface 并且想反转颜色。有没有比这更快、更 Pythonic 的方法?它比较慢。
我知道从 255 中减去该值并不是“反转颜色”的唯一定义,但这是我现在想要的。
我很惊讶 pygame 没有内置这样的东西!
谢谢你的帮助!
import pygame
def invertImg(img):
"""Inverts the colors of a pygame Screen"""
img.lock()
for x in range(img.get_width()):
for y in range(img.get_height()):
RGBA = img.get_at((x,y))
for i in range(3):
# Invert RGB, but not Alpha
RGBA[i] = 255 - RGBA[i]
img.set_at((x,y),RGBA)
img.unlock()