Используя подушку, alpha_composite
работает только с изображениями того же размера, я хотел бы вставить блок в определенную позицию, сохраняя его альфа-канал.
Чтобы быть более точным, я бы хотелскопируйте / вставьте много раз полупрозрачное изображение в другое, поверх фоновое изображение.
Как это можно сделать с подушкой?
Вот мой код:
el_width, el_height = 100, 300
img = Image.open('partition.png')
img = img.convert("RGBA")
img_rect = Image.new('RGBA', (el_width, el_height), (0, 0, 0, 100))
draw = ImageDraw.Draw(img_rect)
# draw a semi-transparent rectangle:
draw.rectangle((0, 0, el_width, el_height), outline=(50, 155, 50, 155))
del draw
# trying to paste it:
img.paste(img_rect, (10, 10))
img.show()
Вот результат, вы можете видеть, что прямоугольник прозрачен, но его прозрачность игнорируется при использовании «вставки»:
![problematic image](https://i.stack.imgur.com/e0JeR.png)