📅  最后修改于: 2023-12-03 15:23:26.200000             🧑  作者: Mango
二维码是一种可以快速扫描获取信息的编码方式,它已经普及到了我们的生活中的各个领域。在 Python 中,使用 qrcode 库可以方便地生成二维码。
要使用 qrcode 库,首先需要安装它。在命令行中执行以下命令即可:
pip install qrcode
使用 qrcode 生成二维码非常简单。以下是一个生成普通二维码的示例代码:
import qrcode
# 创建二维码对象
qr = qrcode.QRCode(version=1, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=10, border=4)
# 设置数据
data = "https://www.example.com"
# 添加数据到二维码
qr.add_data(data)
# 填充数据并生成二维码
qr.make(fit=True)
# 生成图片对象
img = qr.make_image(fill_color="black", back_color="white")
# 保存图片
img.save("example.png")
代码说明:
qrcode.QRCode
类用于创建二维码对象,需要指定二维码版本、纠错级别、方块大小和边框大小等参数。qr.add_data
方法用于设置要编码的数据。qr.make
方法用于填充数据并生成二维码。qr.make_image
方法用于生成二维码图片对象。可以设置前景色和背景色。img.save
方法用于保存二维码图片。如果想要在二维码中添加一个 logo,也非常容易。以下是一个生成带 logo 的二维码的示例代码:
import qrcode
from PIL import Image
# 创建二维码对象
qr = qrcode.QRCode(version=1, error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=10, border=4)
# 设置数据
data = "https://www.example.com"
# 添加数据到二维码
qr.add_data(data)
# 填充数据并生成二维码
qr.make(fit=True)
# 生成图片对象
img = qr.make_image(fill_color="black", back_color="white")
# 加载 logo
logo = Image.open("example_logo.png")
# 计算 logo 大小
img_w, img_h = img.size
logo_w, logo_h = logo.size
factor = 4
s_w = img_w // factor
s_h = img_h // factor
if logo_w > s_w:
logo_w = s_w
if logo_h > s_h:
logo_h = s_h
logo = logo.resize((logo_w, logo_h), Image.ANTIALIAS)
# 计算 logo 位置并粘贴到二维码上
l_w = (img_w - logo_w) // 2
l_h = (img_h - logo_h) // 2
img.paste(logo, (l_w, l_h))
# 保存图片
img.save("example_logo.png")
代码说明:
Image.open
方法。Image.paste
方法将 logo 粘贴到二维码图片上。qrcode 是一个简单易用的 Python 库,可以用来生成不同类型的二维码。在实际应用中,可能还需要根据具体的需求进行一些调整,比如设置二维码的颜色、形状等等。