python的qrcode怎么设置文字背景

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的qrcode怎么设置文字背景相关的知识,希望对你有一定的参考价值。

使用步骤
1.引入库
import qrcode # pip install qrcode
from PIL import ImageFont, ImageDraw, Image # pip install qrcode PIL
复制
2.程序
list_ = ["熊大", "熊二", "光头强", "肥波", "毛毛", "图图"]

for contain in list_:

qr = qrcode.QRCode(version=2,
error_correction=qrcode.constants.ERROR_CORRECT_H,
)
qr.add_data(contain)
qr.make(fit=True)
img = qr.make_image()
img.save(f'contain(二维码).png')

img = Image.open(f'contain(二维码).png')
draw = ImageDraw.Draw(img)
ttfront = ImageFont.truetype('msyh.ttc', 14) # 字体文件msyh.ttc,需要查找下载
content = contain
draw.text((145, 300), content, font=ttfront) # 文字位置,正文内容,文字RGB颜色,字体
img.save(f'contain(二维码).png')
print(f'共list_张带字二维码绘制完成')
复制

3.参数解释
1.version:控制二维码的大小,取值范围从1到40。取最小值1时,二维码大小为21*21。取值为 None (默认)或者使用fit=true参数(默认)时,二维码会自动调整大小(数值越大二维码越复杂)。
2.error_correction:控制二维码纠错级别。
        ERROR_CORRECT_L:大约7%或者更少的错误会被更正。
        ERROR_CORRECT_M:默认值,大约15%或者更少的错误会被更正。
        ERROR_CORRECT_Q:大约25%或者更少的错误会被更正。
        ERROR_CORRECT_H:大约30%或者更少的错误会被更正。
3.box_size:控制二维码中每个格子的像素数,默认为 10。
4.border:控制二维码四周留白包含的格子数,默认为4。
5.image_factory:选择生成图片的形式,默认为 PIL 图像。
6.mask_pattern:选择生成图片的的掩模。

4.效果展示
关于如何用Python识别二维码可以看我同专栏的下面这篇文章。

Python用opencv实现动态识别二维码,以及加强版Python GUI(图像用户界面编程)_"殇影的博客-CSDN博客Python用OpenCv实现动态识别二维码,以及加强版Python GUI(图像用户界面编程)。动态识别二维码信息,利用电脑摄像头动态扫描二维码,扫描视频中的二维码。QRCodeDetector
https://blog.csdn.net/weixin_45694843/article/details/128046847?spm=1001.2014.3001.5502
参考技术A 在使用Python的QRcode模块创建二维码时,可以使用background参数来设置文字背景。可以使用RGB元组设置文字背景的颜色,例如:background=(0,0,255)。此外,还可以使用图片作为文字背景,可以使用background=image参数来设置。 参考技术B 要在Python的QRcode中设置文字背景,您可以使用QRcode模块中的add_background()函数。该函数可以接受一个可选参数,用于指定文字背景的颜色和透明度。您可以使用add_background()函数来设置QRcode中文字的背景。

python_使用qrcode生成二维码

1.功能

使用qrcode生成二维码

2.代码

#生成二维码:
import qrcode

#根据url生成二维码
def qrcodeWithUrl(url):
    img = qrcode.make(url)
    savePath = "1.png"
    img.save(savePath)

#根据输入的文字生成二维码
def qrcodeWithText(text):
    img = qrcode.make(text)
    savePath = "2.png"
    img.save(savePath)

#输入一句话
content = input("请输入一名话:")
if "http" in content:
    qrcodeWithUrl(content)
else:
    qrcodeWithText(content)

print("二维码已生成完毕,请查看!")

 

以上是关于python的qrcode怎么设置文字背景的主要内容,如果未能解决你的问题,请参考以下文章

Python中如何设置输出文字的颜色

CSS怎么设置让背景颜色透明,而文字不透明

在Qt中怎么设置QFileDialog对话框的文字颜色和背景颜色?

html中怎么设置body背景图片的透明度,但不影响其他图片与文字

怎么设置整个html的背景颜色

Qt5 QPlainTextEdit怎么设置背景颜色和文字的颜色