资讯专栏INFORMATION COLUMN

动态二维码拼接

luxixing / 1518人阅读

摘要:需求拼接纯二维码到固定背景图片,形成收款码特殊要求张背景图放两张不同二维码最后效果实现放置张二维码到背景图片以上面行形成的背景图,作为背景图,放置第二章二维码实现一实现二遍历次每次从底图和二维码各取一个码拼接读取二维码修改二维码到合适尺寸读

需求:

拼接纯二维码到固定背景图片,形成收款码;

特殊要求:

1张背景图放两张不同二维码

最后效果:

实现:

1. 放置1张二维码到背景图片
2. 以上面行形成的背景图,作为背景图,放置第二章二维码

实现一:

#encoding=utf8

import PIL.Image as Image
import os,sys

def join_Pictures(pic_path):
    k = 1
    for p in pic_path:
        qrcode_image = Image.open(p, mode="r")
        tmp_image = qrcode_image.resize((630, 630))
        base_image = Image.open("/Users/wangqi/taimi/qrcode/base.jpg", mode="r")
        box = (92, 324)
        base_image.paste(tmp_image, box)
        # base_image.show()
        base_image.save("/Users/wangqi/taimi/qrcode/tmp_code/%d.jpg" % k)
        k+=1

def read_path(path):
    paths = []
    for root, dirs, files in os.walk(path):
        path = [os.path.join(root, name) for name in files]
        # print(path)
        paths.extend(path)
    return paths


if __name__ == "__main__":
    pic_path = "/Users/wangqi/taimi/qrcode/qrcode5"
    pathss = read_path(pic_path)
    join_Pictures(pathss)

实现二:

#encoding=utf8

import PIL.Image as Image
import os,sys

def join_2Pictures(base_path,pic_path):
    # 遍历100次,每次从底图和二维码各取一个码拼接
    for k in range(100):
        # 读取二维码
        qrcode_image = Image.open(pic_path[k], mode="r")
        # 修改二维码到合适尺寸
        tmp_image = qrcode_image.resize((628, 628))
        # 读取底图
        base_image = Image.open(base_path[k], mode="r")
        # 配置粘贴位置
        box = (1070, 324)
        # 粘贴
        base_image.paste(tmp_image, box)
        # base_image.show()
        # print base_image.mode
        # 保存到目标文件夹
        base_image.save("/Users/wangqi/taimi/qrcode/codes56/%d.jpg" % k)
        k+=1

def read_path(path):
    paths = []
    for root, dirs, files in os.walk(path):
        path = [os.path.join(root, name) for name in files]
        # print(path)
        paths.extend(path)
    return paths

if __name__ == "__main__":
    # 二维码
    pic_path0 = "/Users/wangqi/taimi/qrcode/qrcode6"
    # 底图
    base_path = "/Users/wangqi/taimi/qrcode/tmp_code"
    # code_path合成图片保存路径
    # code_path = "/Users/wangqi/taimi/qrcode/codes"
    paths_code = read_path(pic_path0)
    paths_base = read_path(base_path)
    join_2Pictures(paths_base, paths_code)

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/45250.html

相关文章

  • balabala: dom 转图片场景和技术方案

    摘要:有一天张大胖接到了产品的一个需求,需求中涉及到了小程序和两端。会后大胖对自己所知道的可以把动态网页转成图片的方案详细的对比了下相信大家都知道这个,这是一个浏览器端的库,可以把结构转成图片。接下来大胖就用了最后的方案,去实施。 有一天张大胖接到了产品的一个需求,需求中涉及到了小程序 和 app 两端。 主要是基于微信的一个活动,需要在 app 和小程序端生成带二维码的图片,生成图片是为了...

    vpants 评论0 收藏0
  • balabala: dom 转图片场景和技术方案

    摘要:有一天张大胖接到了产品的一个需求,需求中涉及到了小程序和两端。会后大胖对自己所知道的可以把动态网页转成图片的方案详细的对比了下相信大家都知道这个,这是一个浏览器端的库,可以把结构转成图片。接下来大胖就用了最后的方案,去实施。 有一天张大胖接到了产品的一个需求,需求中涉及到了小程序 和 app 两端。 主要是基于微信的一个活动,需要在 app 和小程序端生成带二维码的图片,生成图片是为了...

    legendaryedu 评论0 收藏0
  • balabala: dom 转图片场景和技术方案

    摘要:有一天张大胖接到了产品的一个需求,需求中涉及到了小程序和两端。会后大胖对自己所知道的可以把动态网页转成图片的方案详细的对比了下相信大家都知道这个,这是一个浏览器端的库,可以把结构转成图片。接下来大胖就用了最后的方案,去实施。 有一天张大胖接到了产品的一个需求,需求中涉及到了小程序 和 app 两端。 主要是基于微信的一个活动,需要在 app 和小程序端生成带二维码的图片,生成图片是为了...

    whatsns 评论0 收藏0
  • 【JS实用技巧】优化动态创建元素的方式,让代码更加优雅且利于维护

    摘要:更好的方案模板分离原则模板分离原则将定义模板的那一部分,与的代码逻辑分离开来,让代码更加优雅且利于维护。 showImg(https://segmentfault.com/img/bVJ73t?w=800&h=316); 引言 在前端开发中,经常需要动态添加一些元素到页面上。那么如何通过一些技巧,优化动态创建页面元素的方式,使得代码更加优雅,并且更易于维护呢?接下来我们通过研究一些实例...

    JeOam 评论0 收藏0

发表评论

0条评论

luxixing

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<