【Python创建专属二维码】

1、在PyCharm | Settings | Python Interpreter中添加PDL、PILLOW(注意解释器版本)

在这里插入图片描述

2、代码

from PIL import Image
import qrcode


def main():
    # QRCode()创建一个对象:
    qr = qrcode.QRCode(version=5, error_correction=qrcode.constants.ERROR_CORRECT_H, box_size=8, border=4)
    # version:值为1~40的整数,控制二维码的大小(最小值是1,是个21×21的矩阵)
    # error_correction:控制二维码的错误纠正功能。可取值下列4个常量:
    '''
    qrcode.constants.ERROR_CORRECT_X:
        1. X=L时,大约7%或更少的错误能被纠正。 
        2. X=M(默认)时,大约15%或更少的错误能被纠正。
        3. X=Q时,25%以下的错误会被纠正。
        4. X=H时,大约30%或更少的错误能被纠正。
    '''
    # box_size:控制二维码中每个小格子包含的像素数。
    # border:控制边框(二维码与图片边界的距离)包含的格子数(默认为4)

    # 向二维码中添加信息
    qr.add_data("https://blog.csdn.net/IT_6969?spm=1000.2115.3001.5343")

    qr.make(fit=True)

    img = qr.make_image()
    # 二维码设置为彩色
    img = img.convert('RGBA')
    # 打开logo图片
    logo = Image.open("D:/aa.jpg")
    # 二维码尺寸
    img_w, img_h = img.size
    # 默认LOGO最大设为图片的1/4
    factor = 4
    # 最大logo尺寸
    size_w = int(img_w / factor)
    size_h = int(img_h / factor)
    # logo的尺寸
    logo_w, logo_h = logo.size

    if logo_w > size_w or logo_h > size_h:
        logo_w = size_w
        logo_h = size_h
    logo = logo.resize((logo_w, logo_h), Image.LANCZOS).convert('RGBA')
    l_w = int((img_w - logo_w) / 2)
    l_h = int((img_h - logo_h) / 2)
    # 替换指定位置
    img.paste(logo, (l_w, l_h), logo)
    img.show()
    img.save('D:/csdn网址二维码2.png')


main()  # 调用main()函数

3、将要展示的图片放到指定路径,以及二维码信息。

在这里插入图片描述

4、执行,效果

在这里插入图片描述

相关推荐

  1. Python制作

    2024-04-24 21:20:01       38 阅读
  2. python将一个图片雕刻镂空成

    2024-04-24 21:20:01       10 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-24 21:20:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-24 21:20:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-24 21:20:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-24 21:20:01       20 阅读

热门阅读

  1. yolov8 onnx调用

    2024-04-24 21:20:01       10 阅读
  2. python中的锁

    2024-04-24 21:20:01       11 阅读
  3. 机器学习--第六次课

    2024-04-24 21:20:01       11 阅读
  4. Leetcode双指针刷题(一)

    2024-04-24 21:20:01       10 阅读
  5. Python Flask Web教程:make_response的详细用法

    2024-04-24 21:20:01       13 阅读
  6. Bash 脚本常用命令

    2024-04-24 21:20:01       10 阅读
  7. Docker之构建镜像

    2024-04-24 21:20:01       10 阅读
  8. SqL--DCL数据控制语言

    2024-04-24 21:20:01       12 阅读