yuanting 发表于 2022-8-11 19:40

python学习系列之基于qrcode、tkinter、PIL设计的二维码生成器

本来是这个二维码先做的,但是先发的是登录器,现在补发一个二维码生成器的学习,
前面的海龟画画就不发了,应该蛮简单的,有需要一起探讨的可以一起探讨。
前面对于二维码会觉得有点意思所以想去试试:
首先提供一下设计的图片思路:

首先会设计ui来实现基础操作,当然,也会有用到函数,这个应该都知道,所以就不多赘述了,
通过ui设计以上图片内容以后,
就会简单写一个函数
函数会去获取内容输入框里面的内容,设计思路如图

import qrcode
import tkinter
from PIL import Image,ImageTk
def creat():
    inf = entry.get()
    #获取entry输入数据
    img = qrcode.make(inf)
    #设置二维码
    img = img.convert("RGBA")
    #二维码图片颜色=彩色
    icon = Image.open("E:/p/test1.jpeg")
    #打开自己下载的插图
    w,h = img.size
    #获取二维码的高和宽、设置变量:高、宽,w是宽,h是高
    factor = 6
    size_w = int(w/factor)
    size_h = int(h/factor)
    #高和宽个减少六倍(相比如二维码)
    icon = icon.resize((size_w,size_h),Image.ANTIALIAS)
    #设置插图尺寸
    W = int((w - size_w)/2)
    H = int((h - size_h)/2)
    #设置位置变量
    icon = icon.convert("RGBA")
    img.paste(icon,(W,H))
    #设计插图位置
    img.save("E:/p/eeeeeeeeee.png")
    #保存到电脑
    img1 = img.resize((300,300),Image.ANTIALIAS)
    img_root = ImageTk.PhotoImage(img1)
    canvas.create_image(150,150,image=img_root)
    #画布显示
    root.mainloop()
    return
root = tkinter.Tk()
root.title("二维码生成器")
root.geometry('600x600+400+100')
label = tkinter.Label(root,text="二维码内容")
label.place(x=235,y=5,width=130,height=50)
entry = tkinter.Entry(root)
entry.place(x=50,y=60,width=510,height=30)
canvas = tkinter.Canvas(root,width=300,height=300,bg='white')
canvas.place(x=100,y=200)
button = tkinter.Button(root,text='生成二维码',command=creat)
button.place(x=420,y=350,width=90,height=30)
root.mainloop()
运行效果显示:

忧郁之子 发表于 2022-8-12 16:11

这个不错,可以用来制作自己专属的二维码

virsnow 发表于 2022-10-3 16:08

可以可以 楼主可以
页: [1]
查看完整版本: python学习系列之基于qrcode、tkinter、PIL设计的二维码生成器