import qrcode
# 处理图片
from PIL import Image
# 生成二维码 版本 边框 box_size 容错率
qr = qrcode.QRCode(
version=1, #版本
border=4, #边框
box_size=10, #box_size: 尺寸
error_correction=qrcode.constants.ERROR_CORRECT_H #容错率:允许错误出现的范围和概率。
)
# 添加信息,想要需要的信息
qr.add_data("http://wxa.cli.im/qr/idcode/C_/S_2/ilx5XcD/6a")
# 二维码生成样式
img = qr.make_image(fill_color="#000",back_color="#FFF")
# 添加图片 合二为一
icon = Image.open("标志.jpg")
# 设置比例 两张图片的icon 和 img 1:6
factor = 6
# 获取图片的宽和高
img_w, img_h = img.size
icon_w, icon_h = icon.size
print(img_w,img_h)
print(icon_w,icon_h)
# 图片的宽和高
size_w = int(img_w/6)
size_h = int(img_h/6)
# 完成图片的重置
if icon_w > size_w:
icon_w = size_w
if icon_h > size_h:
icon_h = size_h
# 改变图片的大小
icon = icon.resize((icon_w, icon_h), Image.ANTIALIAS)
# 安装到二维码的中心
w = int((img_w-icon_w)/2)
h = int((img_h-icon_h)/2)
img.paste(icon,(w, h))
img.show()
실행 후 효과 그림은 다음과 같습니다.
내 정보를 알고 싶다면 스캔하면 내 명함이 표시됩니다.
비고 : 1. 아래와 같이 코드에서 :
# 获取图片的宽和高
img_w, img_h = img.size
icon_w, icon_h = icon.size
print(img_w, img_h)
print(icon_w, icon_h)
클릭하여 실행하면 실행중인 인터페이스에서 QR 코드의 너비와 높이와 사진이 나타납니다.
2.이 QR 코드를 파일에 저장하려면 코드 끝에 추가 할 수 있습니다.
# 保存
img.save("想要给图片取的名字.jpg")