python - 如何使用 Pillow 将图像粘贴到更大的图像上?

标签 python python-imaging-library pillow

我有一个相当简单的代码文件:

from PIL import Image
til = Image.new("RGB",(50,50))
im = Image.open("tile.png") #25x25
til.paste(im)
til.paste(im,(23,0))
til.paste(im,(0,23))
til.paste(im,(23,23))
til.save("testtiles.png")

但是,当我尝试运行它时,出现以下错误:

Traceback (most recent call last):
    til.paste(im)
  File "C:\Python27\lib\site-packages\PIL\Image.py", line 1340, in paste
    self.im.paste(im, box)
ValueError: images do not match

是什么导致了这个错误?它们都是 RGB 图像,文档没有说明这个错误。

最佳答案

问题出在第一次粘贴 - 根据 PIL 文档 ( http://effbot.org/imagingbook/image.htm ),如果没有传递“box”参数,图像的大小必须匹配。

编辑: 我实际上误解了文档,你是对的,它不在那里。但从我在这里的尝试来看,似乎没有传递第二个参数,尺寸必须匹配。如果要保持第二张图片的大小并将其放在第一张图片的左上角,只需执行以下操作:

...
til.paste(im,(0,0))
...

关于python - 如何使用 Pillow 将图像粘贴到更大的图像上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28407462/

相关文章:

Python - 在图像中查找对象的中心

python - 使用 PIL 将 numpy 数组保存为 TIFF 序列

python - 安装 Pillow 错误 : Setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

python - Dynamics 365 API - 操作 AddMembersTeam

python - 无法通过 485 使用 python 读取 Modbus 的寄存器

python - 有没有办法像处理打开的文件一样处理 PIL-Image?

python - 为什么 "from PIL import Image"不起作用,但 "from pil import Image"起作用? (小写 pil)

python - NLTK包,未定义标签

python - 在 python 中填充具有特定值的列表

python - 使用 PIL 用附近的颜色填充空白图像空间(也称为修复)