python PIL 給圖片添加一個半透明的效果


注意:因為mask背景是透明的,圖案是半透明的,所以需要轉成’RGBA’模式,如果不轉模式會報錯;但是!!!在存儲圖片的時候要轉回’RGB’格式

from PIL import Image, ImageDraw

bg_img =Image.open('./Morning.png').convert('RGBA')
# bg_img = Image.new("RGBA", (256, 256), (0, 0, 255, 255))
def drawRect(img, pos, **kwargs):
    transp = Image.new('RGBA', img.size, (0,0,0,0))
    draw = ImageDraw.Draw(transp, "RGBA")
    draw.rectangle(pos, **kwargs)
    img.paste(Image.alpha_composite(img, transp))

drawRect(bg_img, (0,155,875,435), fill=(255,255,255,150))
bg_img.show()
bg_img.convert('RGB')
bg_img.save("Morning.png")

這是原圖👇
image
效果如下:
image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM