错位的梦寐

如何用 Python 生成炫酷二维码

2020-05-28


利用 python 第三方库制作和美化二维码。

安装myqr库

在cmd中直接用pip安装

pip install myqr

函数

version, level, qr_name = myqr.run(
    words="https://www.baidu.com",   # 可以是字符串,也可以是网址(前面要加http(s)://)
    version=1,                       # 设置容错率为最高
    level='H',                       # 控制纠错水平,范围是L、M、Q、H,从左到右依次升高
    picture="123.gif",               # 将二维码和图片合成
    colorized=True,                  # 彩色二维码
    contrast=1.0,  # 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
    brightness=1.0,  # 用来调节图片的亮度,其余用法和取值同上
    save_name="3.gif",               # 保存文件的名字,格式可以是jpg,png,bmp,gif
    save_dir=os.getcwd()  # 图片保存的位置
)

二维码制作

普通二维码

import os
from MyQR import myqr

myqr.run(
    words="https://hg1227.github.io/",   # 可以是字符串,也可以是网址(前面要加http(s)://)
    version=1,                       # 设置容错率为最高
    level='H',                       # 控制纠错水平,范围是L、M、Q、H,从左到右依次升高
    colorized=True,                  # 彩色二维码
    contrast=1.0,  # 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
    brightness=1.0,  # 用来调节图片的亮度,其余用法和取值同上
    save_name="myblog.png",               # 保存文件的名字,格式可以是jpg,png,bmp,gif
    save_dir=os.getcwd()  # 图片保存的位置
)

带有图片的二维码

import os
from MyQR import myqr

version, level, qr_name = myqr.run(
    words="https://hg1227.github.io/",   # 可以是字符串,也可以是网址(前面要加http(s)://)
    version=1,                       # 设置容错率为最高
    level='H',                       # 控制纠错水平,范围是L、M、Q、H,从左到右依次升高
    picture="21.jpg",               # 将二维码和图片合成
    colorized=True,                  # 彩色二维码
    contrast=1.0,  # 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
    brightness=1.0,  # 用来调节图片的亮度,其余用法和取值同上
    save_name="mb12.png",               # 保存文件的名字,格式可以是jpg,png,bmp,gif
    save_dir=os.getcwd()  # 图片保存的位置
)

生成 gif 格式的二维码

myqr.run(
    words='https://hg1227.github.io/',
    version=1,
    level='H',
    picture='3.gif',
    colorized=True,
    contrast=1.0,
    brightness=1.0,
    save_name='myblog.gif',
    save_dir=os.getcwd()
)

解析二维码

zxing 库是用来解析二维码的。

如果我们需要对现有二维码进行美化,只需如下两步即可。

  • 对现有二维码进行解析获取解析内容

  • 利用解析的内容生成新的二维码

import zxing

reader = zxing.BarCodeReader()
barcode = reader.decode('myqr.gif')
print(barcode.parsed)

美化二维码

import zxing
from MyQR import myqr

reader = zxing.BarCodeReader()
barcode = reader.decode('gzh.jpg')
myqr.run(words=str(barcode.parsed),
         version=1,
         picture='my.gif',
         colorized=True,
         save_name='gmyqr.gif'
         )

参考

  1. python二维码操作:QRCode和MyQR入门
  2. 如何用 Python 生成炫酷二维码

上一篇 Latex 语法

Comments

Content