Я уже взглянул на этот вопрос: ТА вопрос и, похоже, реализовал очень похожую технику для замены одного цвета, включая значения альфа:
c = Image.open(f)
c = c.convert("RGBA")
w, h = c.size
cnt = 0
for px in c.getdata():
c.putpixel((int(cnt % w), int(cnt / w)), (255, 0, 0, px[3]))
cnt += 1
Однакоэто очень медленно.Я нашел этот рецепт на паутинах, но до сих пор не смог его использовать.
Я пытаюсь сделать различные PNG-изображения, состоящие из одного цвета, белого,Каждый пиксель на 100% белый с различными значениями альфа, включая альфа = 0. Что я хочу сделать, это в основном раскрасить изображение новым заданным цветом, например # ff0000 <00-ff>.Поэтому мое начальное и получающееся изображения будут выглядеть так, где левая сторона - это мое начальное изображение, а правая - мое конечное изображение (ПРИМЕЧАНИЕ: фон был изменен на светло-серый, поэтому вы можете видеть его, так как он на самом деле прозрачныйя не вижу точек слева.)
![alt text](https://i.stack.imgur.com/aVyKO.png)
Есть ли лучший способ сделать это?