程序员必备!用 Python 轻松生成自定义二维码

开发
MyQR是Python的一个库,它可以用来方便地生成艺术、自定义和极简QR码。MyQR可以生成黑白、彩色、GIF动图等多种样式的QR码。

MyQR是Python的一个库,它可以用来方便地生成艺术、自定义和极简QR码。MyQR可以生成黑白、彩色、GIF动图等多种样式的QR码。

安装MyQr

pip install MyQr

1.生成普通的黑白二维码

from MyQr import myqr

MyQR.run('https://www.python.org/',save_name=r"D:\demo_png.png")

在上面我们直接使用了myqr.run()方法,并且使用save_name参数指定了我们保存二维码图片的位置,对我们生成的二维码扫码后我们就可以正常打开python的官方网站

当前还有其他的一些基础的内置参数去配置生成的二维码,大家可以自己玩一玩

2.生成带图片的二维码

这里我就用我随机生成一个Python都知道的logo作为图片背景

接下来我们开始制作

from MyQR import myqr

myqr.run(
    words='https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzkwMDE4NzE5OQ==&scene=124#wechat_redirect',
    colorized=True,
    save_name=r"D:\demo_png.png",
    picture=r"python_know_logo.png",
    contrast=1.5,
)

生成的带图片二维码效果如下:

这里我是随便用的一张图片,所以可能生成出来的样式可能有点难看,不过你们下面去尝试的时候可以使用一些好看的图片试试

3.生成GIF动图二维码

生成一张gif动态的二维码图片,我们只需要将picture参数中的静态图片替换为gif动态图片就可以了,这里我使用的gif动态图片是这个

待补充gif二维码

看看制作成动态gif动态二维码后的效果

from MyQR import myqr

myqr.run(
    words='https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzkwMDE4NzE5OQ==&scene=124#wechat_redirect',
    colorized=True,
    save_name=r"D:\demo_png.gif",
    picture=r"xiaohuangren.gif",
    contrast=1.5,
)

原理简析

MyQR 库的核心原理是利用 Pillow 图像库生成QR码图片,并通过 shipyard 库计算QR码颜色信息。主要步骤包括:

  • 输入内容字符串
  • 使用 shipyard 将字符串处理为可存储于QR码中的字节信息
  • 根据参数设置QR码样式
  • 使用 Pillow 绘制初始 QR码图片
  • 若设置彩色,则计算颜色填充并生成彩色QR码
  • 若设置了图片,则读取图像嵌入QR码
  • 根据保存设置,保存目标图片或GIF动图
责任编辑:赵宁宁 来源: Python技术
相关推荐

2024-06-26 08:46:45

2021-02-08 08:40:00

Zint二维码开源

2023-11-17 09:07:51

.NET生成二维码识别二维码

2023-11-17 15:44:06

C++库生成二维码

2015-09-24 09:56:19

.NET二维码

2020-12-30 10:55:01

代码Java二维码

2013-01-30 12:16:49

二维码NFC近场通讯

2013-10-29 09:46:05

二维码

2013-03-27 16:13:17

Android开发Android二维码生QR生成

2023-10-31 08:16:16

Go语言二维码

2023-12-25 14:53:36

2020-08-07 14:18:03

二维码Go语言编程

2014-12-31 15:37:16

二维码生成扫描

2017-02-21 09:17:46

二维码漏洞

2011-12-06 16:40:45

二维码快拍二维码灵动快拍

2017-11-21 09:00:15

PHP二维码LOGO图像

2014-03-05 14:41:55

二维码登录

2012-04-01 09:53:13

二维码

2020-10-08 18:48:02

二维码安全应用安全网络攻击

2015-10-28 13:33:50

二维码条形码扫描源码
点赞
收藏

51CTO技术栈公众号