QRコード生成ソフトウェア 【Python】

tkinter

Python で作成した QRコードの生成ソフトウェアです。tkinter と pyqrcode を使っています。

以下の環境で動作確認をしています。
環境: Windows 10、Python 3.x

公開: QRコード作成ソフト

以前、バーコードの読み取りソフトウェアを作成し、このサイトで公開しています(下記、関連リンク参照)。
すでに、QRコードや一次元バーコードの読み取りが可能になっています。QRコードの生成ができれば、QRコードの作成から読み取りまで、一連の作業のいずれも対応できることになります。QRコードを生成するプログラムを作成して動きましたので公開します。QRコードのみ対応しています。

pyqrcode のインストール

pyqrcode をインストールしていない場合は、以下でインストールをしてください。

pip install pyqrcode 

サンプルコードの設定方法

・ PC のデスクトップなどにフォルダを作成してください。
・ 同フォルダに QRcode_generator1.py 等の名前でテキストファイルを作成してください。このテキストファイルに下記のサンプルコードをコピー&ペーストで貼りつけて保存してください。
なお、QRコードの画像を保存する際は、このフォルダ内に保存されます。

使い方

① コマンドプロンプトから、上記のスクリプトを実行してください。
(例:コマンドプロンプトで上記のフォルダに移動し、”python QRcode_geneartor1.py” + [enter] と入力する。)
② ”barcode data” 欄に、文字列を入力し、「encode」ボタンをクリックしてください。
→ QRコードが生成されます。
※ 生成したQRコードの画像を保存する場合は、「save」ボタンをクリックしてください。
→ フォルダ内に PNG 画像が保存されます。
“file name” 欄のファイル名を変えると、保存するファイル名を変更できます。保存できるフォーマットは PNG 形式のみです。

まとめ

QRコードの作成が自由にできるようになりました。QRコードの作成から読み取りまで自由自在となりました。

なお、物体認識という観点では、顔認識、バーコード認識はすでに動いています。Tensorflow などを用いた一般的な物体認識についてもカバーできるかなといったところです。

関連リンク
・ バーコードリーダ 【QRコード対応】
・ 動作確認済み USB カメラ 【おすすめ】

サンプルコード:QRコード生成ソフト

#!/usr/bin/env python
# -*- coding: utf8 -*-
import os
import tkinter as tk1 
import pyqrcode as pq1 

def encode1(): 
    global qr1, img1 
    data1 = str( textbox1.get() ) 
    print( data1 ) 
    qr1 = pq1.create( data1 ) 
    img1 = tk1.BitmapImage( data = qr1.xbm( scale=8 ) ) 
    label3.config( image = img1 ) 

def save1(): 
    global path1 
    file1 = path1 + str( textbox2.get() ) 
    print( file1 ) 
    qr1.png( file1, scale=8 ) 

path1 = os.path.dirname(__file__) + "\\"   

frame1 = tk1.Tk()
frame1.title(u"QRcode_generator v0.1")
frame1.geometry("450x400")

label1 = tk1.Label(text='barcode data', anchor='w')
label1.place(x=10, y=10, width=100) 

label2 = tk1.Label(text='file name', anchor='w')
label2.place(x=10, y=40, width=100) 

label3 = tk1.Label( frame1, bg='white' ) 
label3.place(x=25, y=70, width = 400, height = 300) 

textbox1 = tk1.Entry( master=frame1 ) 
textbox1.place(x=100, y=10, width=200) 

textbox2 = tk1.Entry( master=frame1 ) 
textbox2.place(x=100, y=40, width=200) 
textbox2.delete( 0, tk1.END ) 
textbox2.insert( 0, "file01.png" ) 

button1 = tk1.Button( frame1, text='encode', command=encode1 )
button1.place(x=320, y=5, width=100)

button2 = tk1.Button( frame1, text='save', command=save1 )
button2.place(x=320, y=35, width=100)

qr1 = 0 
img1 = 0

frame1.mainloop()

タイトルとURLをコピーしました