from PIL import Image
from PIL import ImageDraw
from io import BytesIO
from urllib.request import urlopen
url = "https://i.ytimg.com/vi/W4qijIdAPZA/maxresdefault.jpg"
file = BytesIO(urlopen(url).read())
img = Image.open(file)
img = img.convert("RGBA")
draw = ImageDraw.Draw(img, "RGBA")
draw.rectangle(((0, 00), (img.size[0], img.size[1])), fill=(0,0,0,127))
img.save('dark-cat.jpg')
这给了我一个巨大的黑色方块。我希望它是一个带猫的半透明黑色方块。有任何想法吗?
原文由 Chase Roberts 发布,翻译遵循 CC BY-SA 4.0 许可协议
抱歉,我关于它是错误的评论是不正确的,所以……
您可以通过创建临时图像并使用
Image.alpha_composite()
来实现,如下面的代码所示。请注意,它支持黑色以外的半透明方块。这是将其应用于测试图像的结果: