python实现图片横向和纵向拼接

2021-03-19 18:24

阅读:356

# -*- coding:utf-8 -*-
__author__ = ‘ShawDa‘

from PIL import Image

def join(png1, png2, flag=‘horizontal‘):
"""
:param png1: path
:param png2: path
:param flag: horizontal or vertical
:return:
"""
img1, img2 = Image.open(png1), Image.open(png2)
size1, size2 = img1.size, img2.size
if flag == ‘horizontal‘:
joint = Image.new(‘RGB‘, (size1[0]+size2[0], size1[1]))
loc1, loc2 = (0, 0), (size1[0], 0)
joint.paste(img1, loc1)
joint.paste(img2, loc2)
joint.save(‘horizontal.png‘)
elif flag == ‘vertical‘:
joint = Image.new(‘RGB‘, (size1[0], size1[1]+size2[1]))
loc1, loc2 = (0, 0), (0, size1[1])
joint.paste(img1, loc1)
joint.paste(img2, loc2)
joint.save(‘vertical.png‘)

if name == ‘main‘:
png = ‘lena.png‘
join(png, png)
join(png, png, flag=‘vertical‘)


评论


亲,登录后才可以留言!