繁体   English   中英

使用Python合并图像

[英]Merge images with Python

我正在尝试将图像与python合并,但总的来说,结果图像总是出现在木板上。

from PIL import Image

images = map(Image.open, ['0.png', '1.png', '2.png', '3.png', '/4.png', '5.png', '6.png', '7.png'])

widths, heights = zip(*(i.size for i in images))

total_width = sum(widths)
max_height = max(heights)

new_im = Image.new('RGB', (total_width, max_height))

x_offset = 0

for im in images:
   new_im.paste(im, (x_offset,0))
   x_offset += im.size[0]

new_im.save('test.png')

问题是创建迭代器images map ,迭代器只能使用一次 - 即。 在一for 之后,它认为没有更多的图像和第二for不起作用。

并且您使用两个for循环中的images

首先(它正常工作):

zip(*(i.size for i in images))

第二(它看到空列表)

for im in images:

您必须使用list()来创建可以与许多for循环一起使用的真实列表

images = list(map(...))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM