Python图像库-创建并粘贴imag

2024-04-28 14:10:21 发布

您现在位置:Python中文网/ 问答频道 /正文

如何创建一个黑色背景的新图像并在其上粘贴另一个图像?

我要做的是把一些128x128的透明图标变成75x75的黑色背景图标。

不起作用。。。

import Image

theFile = "/home/xxxxxx/Pictures/xxxxxx_128.png"

img = Image.open(theFile)

newImage = Image.new(img.mode, img.size, "black")
newImage.paste(img)
newImage.resize((75,75))
newImage.save("out.png")

print "Done"

谢谢!


Tags: 图像imageimporthomeimgpng粘贴open
1条回答
网友
1楼 · 发布于 2024-04-28 14:10:21

resize方法返回一个新的图像对象,而不是更改现有的图像对象。另外,在粘贴图像之前,应该调整图像的大小。以下对我有效:

import Image

theFile = "foo.png"

img = Image.open(theFile)
resized = img.resize((75,75))
r, g, b, alpha = resized.split()

newImage = Image.new(resized.mode, resized.size, "black")
newImage.paste(resized, mask=alpha)
newImage.save("out.png")

print "Done"

我从this blog post找到了这种split+mask技术的一个例子。

输入示例:

Input image

输出:

enter image description here

相关问题 更多 >