У меня есть два изображения, фон и изображение PNG с прозрачными пикселями. Я пытаюсь вставить PNG на фон с помощью Python-PIL, но когда я вставляю два изображения, я получаю белые пиксели вокруг изображения PNG, где есть прозрачные пиксели.Как вставить изображение PNG с прозрачностью в другое изображение в PIL без белых пикселей?
Мой код:
import os
from PIL import Image, ImageDraw, ImageFont
filename='pikachu.png'
ironman = Image.open(filename, 'r')
filename1='bg.png'
bg = Image.open(filename1, 'r')
text_img = Image.new('RGBA', (600,320), (0, 0, 0, 0))
text_img.paste(bg, (0,0))
text_img.paste(ironman, (0,0))
text_img.save("ball.png", format="png")
Как я могу иметь прозрачные пиксели, а не белый?
спасибо, что это работает, но когда я попытался сделать то же самое с изображением с интернет-URL, я получил ошибку «bad mask mask», можете ли вы сказать мне причину этого? – pavitran
Возможно, это зависит от изображения, можете ли вы дать мне ссылку на изображение? Вы также можете попробовать 'mask = ironman.split() [3]' –
что делает функция '.split() [3]' здесь? – pavitran