Kendi QR Kod Oluşturucu Uygulamanı Yap

Enes POLAT
Turk Telekom Bulut Teknolojileri
3 min readJan 6, 2023

Python ile QR Kod üreten masaüstü uygulaması yapıyoruz.

Günlük hayatımızın bir çok alanında QR kodları etkin olarak kullanıyoruz. Kendi çalışmalarımızda da kullanmak üzere Python dilinde QR Kod üreteci Masaüstü uygulması kodunu beraber yazalım. Uygulamada Tkinter, Pillow ve qrcode modüllerini kullanacağız. Pillow ve qrcode modüllerini indirmek için aşağıdaki kurulum komutlarını çağırıyoruz.

pip install Pillow

pip install qrcode

En kısa haliyle QR Kod Oluşturucu kod şu şekilde:

import qrcode

resim= qrcode.make(“ENES POLAT”)

resim.save(“qr.png”)

Kodu yazdığımız dizinde içeriği “ENES POLAT” olan qr.png isminde bir resim dosyası oluşacak, bu kadar basit:)

Şimdi QR Kodumuzu biraz özgünleştirelim.

import qrcode

qr = qrcode. QRCode(version=1,

error_correction=qrcode.constants.ERROR_CORRECT_L, box_size=20, border=2)

qr.add_data(“ENES POLAT”)

qr.make(fit=True)

img = qr.make_image(fill_color=”red”, back_color=”orange”)

img.save (“resim2.png”)

Yukarıda hem qr kodun dış çerçeve boyutunu hem de arkaplan ve kendi rengini belirledik.

Çıktısı kırmızı renkli turuncu arkaplanlı ve çerçevesi 2 pixel- kenarlığı 20 piksel olan bir kare kod olacaktır.

Bu özel bilgileri kullanıcının kendisinin belirlemesi için tkinter modülü kullanarak bir masaüstü uygulaması yapalım

# Import module

from tkinter import *

import qrcode

from PIL import Image, ImageTk

root = Tk()

root.title(‘QR Kod Oluşturucu’)

root.geometry(“500x620”)

def show():

“””

qr_renk.config( text = renkler[clicked.get()] )

arka_plan.config( text = renkler[clicked2.get()] )

“””

veri_baslik.config(text=”Karekod içeriği”)

veri.config(text=e1.get())

qrrenk = renkler[clicked.get()]

arkaplan = text = renkler[clicked2.get()]

qr = qrcode. QRCode(version=1,

error_correction=qrcode.constants.ERROR_CORRECT_L,

box_size=50, border=1)

qr.add_data(e1.get())

qr.make(fit=True)

img = qr.make_image(fill_color=qrrenk, back_color=arkaplan)

img.save(“advanced.png”)

# Create a photoimage object of the image in the path

image1 = Image.open(“advanced.png”)

# Resize the image using resize() method

resize_image = image1.resize((350, 350))

test = ImageTk.PhotoImage(resize_image)

label1 = Label(image=test)

label1.image = test

label1.grid(row=7, column=1)

options = [

“Kırmızı”,

“Siyah”,

“Yeşil”,

“Beyaz”,

“Mor”,

“Sarı”,

“Turuncu”

]

options2 = [

“Kırmızı”,

“Siyah”,

“Yeşil”,

“Beyaz”,

“Mor”,

“Sarı”,

“Turuncu”

]

renkler = {

“Kırmızı”: “red”,

“Siyah”: “black”,

“Yeşil”: “green”,

“Beyaz”: “white”,

“Mor”: “purple”,

“Sarı”: “yellow”,

“Turuncu”: “orange”

}

# datatype of menu text

clicked = StringVar()

# initial menu text

clicked.set(“Beyaz”)

# datatype of menu text

clicked2 = StringVar()

clicked2.set(“Siyah”)

# Create Label

label = Label(root, text=”Karekod İçeriği”)

label.grid(row=0, column=0)

e1 = Entry(root, bg=”gray”)

e1.grid(row=0, column=1)

# Create Label

label1 = Label(root, text=”Arkaplan Rengi”)

label1.grid(row=1, column=0)

# Create Dropdown menu

drop = OptionMenu(root, clicked, *options)

drop.grid(row=1, column=1)

# Create Label

label2 = Label(root, text=”Karekod Rengi”)

label2.grid(row=2, column=0)

drop2 = OptionMenu(root, clicked2, *options2)

drop2.grid(row=2, column=1)

# Create button, it will change label text

button = Button(root, text=”Kare Kod Oluştur”,

command=show).grid(row=3, column=1)

# Create Label

qr_renk = Label(root, text=” “)

qr_renk.grid(row=4, column=1)

arka_plan = Label(root, text=” “)

arka_plan.grid(row=5, column=1)

veri_baslik = Label(root, text=” “)

veri_baslik.grid(row=8, column=0)

veri = Label(root, text=” “)

veri.grid(row=8, column=1)

# Execute tkinter

root.mainloop()

Kodun çıktısı aşağıdaki gibi olacaktır.

Uygulamamızın son hali

Koda ayrıca linkten erişebilirsiniz.

Bir sonraki yazımızda buluşmak üzere.

--

--