Python PIL粘贴2 png图像

时间:2017-06-27 20:57:48

标签: python pillow

我有两张照片。第一个叫做white_1.png,只是白色背景600px,第二个图像叫img2222.png,只是黑色字母" A"。

我想将字母A粘贴到white_1.png中。然而,在输出中我只得到一个黑色背景。两个文件都是600px。这是我到目前为止的代码。

from PIL import Image

im1 = Image.open('white_1.png') 
im2 = Image.open('img2222.png')   
im1.paste(im2)

im1.save('dasdsdsad.jpg')

2 个答案:

答案 0 :(得分:1)

您的img2222.png可能正在使用透明度。如果要使用透明像素,粘贴需要掩码参数。如果您使用没有蒙版的paste,则会将透明值假定为白/黑像素。

您需要做的就是应用遮罩来应用透明度。

im1.paste(im2, (0, 0), im2)

im1.paste(im2,mask=im2)

另请注意,将文件另存为JPG时,默认情况下JPG不支持透明度。这不是问题,因为你最后没有任何透明度。

答案 1 :(得分:0)

如果你分享你正在使用帮助的图像会更容易。

只是一些想法:

  • 您要将格式从.png更改为.jpg
  • 您没有说明粘贴应该在哪里。例如:im1.paste(im2,(0,0))。