odoo 设备增加二维码 python生成二维码的一个有意思的问题

odoo 设备增加二维码 python生成二维码的一个有意思的问题

在odoo设备集成中根据客户要求,增加了一个二维码,想包含一些信息,用python的二维码库qrcode,qrcode是二维码生成的Python开源库。

代码如下:

            ewmny = '设备:' + label.name + ',状态:' + label.zhuangtai  # + ',编号:' + label.gongsibh
            if label.zhuangtai:
                ewmny = ewmny + ',状态:' + label.zhuangtai
            else:
                ewmny = ewmny + ',状态: '
            if label.gongsibh:
                ewmny = ewmny + ',编号:' + label.gongsibh

            ewm = qrcode.make(ewmny)  # 将330*330大小的二维码
            # print(ewm.size)
            ewm.thumbnail((80, 80))
            ewmf = './tempdata/wmf.png'
            ewm.save(ewmf)

生产展示后,结果用微信扫描,提示如下:

 

微信暂不支持展示二维码中的文本内容

记得以前可以显示的。但微信下边有行“复制文本内容",复制后粘到其它地方,还是可以看到内容的

网上说可以加张图片,便试了下,


from PIL import Image
import qrcode, os

def create_qrcode(url, qrcodename):
    qr = qrcode.QRCode(
        version=1,  # 设置容错率为最高
        error_correction=qrcode.ERROR_CORRECT_H,  # 用于控制二维码的错误纠正程度
        box_size=8,  # 控制二维码中每个格子的像素数,默认为10
        border=1,  # 二维码四周留白,包含的格子数,默认为4
    )

    qr.add_data(url)  # QRCode.add_data(data)函数添加数据
    qr.make(fit=True)  # QRCode.make(fit=True)函数生成图片

    img = qr.make_image()
    img = img.convert("RGBA")  # 二维码设为彩色
    logo = Image.open("images/ewm.png")  # 传gif生成的二维码也是没有动态效果的

    w,h = img.size
    logo_w,logo_h = logo.size
    l_w = int((w - logo_w) / 2)
    l_h = int((h - logo_h) / 2)
    logo = logo.convert("RGBA")
    img.paste(logo, (l_w, l_h), logo)
    img.show()
    img.save(os.getcwd() + "/images/" + qrcodename + ".png", quality=100)

def main():
    url = input("请输入文本或URL:")
    qrcodename = input("请输入生成二维码的名称:")
    create_qrcode(url,qrcodename)

if __name__ == '__main__':
    main()

 用微信扫一下,识别不出来了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

信息化未来

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值