美文网首页
02.用Python来合并图片

02.用Python来合并图片

作者: __豆约翰__ | 来源:发表于2019-05-28 20:32 被阅读0次

    目的

    为第三步制作照片墙功能热身。(照片墙功能中用到了 PIL paste方法)

    自学知识点(百度)

    • PIL paste方法

    代码:
    将第一个任务分解出来的图片放到项目的images目录中。

    import os
    from PIL import Image
    
    '''
    把目录下的图片拼接成一张大图片
    '''
    
    # 图片压缩后的大小
    width_i = 200
    height_i = 300
    
    # 每行每列显示图片数量
    line_max = 5
    row_max = 5
    
    # 参数初始化
    all_path = []
    num = 0
    pic_max = line_max * row_max
    
    for filename in os.listdir('./images'):
        if filename.endswith('jpg') or filename.endswith('png'):
            all_path.append(os.path.join('./images', filename))
    
    toImage = Image.new('RGBA', (width_i * line_max, height_i * row_max))
    
    for i in range(0, row_max):
        for j in range(0, line_max):
    
            # 图片比计划的少
            if num >= len(all_path):
                print("breadk")
                break
    
            pic_fole_head = Image.open(all_path[num])
            width, height = pic_fole_head.size
    
            tmppic = pic_fole_head.resize((width_i, height_i))
    
            loc = (int(i % line_max * width_i), int(j % line_max * height_i))
    
            # print("第" + str(num) + "存放位置" + str(loc))
            toImage.paste(tmppic, loc)
            num = num + 1
    
        # 图片比计划的多
        if num >= pic_max:
            break
    
    print(toImage.size)
    toImage.save('merged.png')
    

    相关文章

      网友评论

          本文标题:02.用Python来合并图片

          本文链接:https://www.haomeiwen.com/subject/fgpwzqtx.html