今回は文字を拡大するプログラムを作ってみました。
簡単なので、是非、最後までご覧になって下さい。
では、始めてみましょう。
ライブラリ『tkinter』を使用
今回作成するプログラムは、拡大したい文字を入力するボックスを作って、『拡大』ボタンを押して、拡大した文字を表示させます。
そういうことで、今回はPYTHONでGUIのライブラリを持っている『tkinter』を使用します。
文字を拡大させるプログラム
import tkinter as tk from tkinter import font root = tk.Tk() root.title('漢字拡大') canvas = tk.Canvas(root, height=500, width=450, bg="white") canvas.pack() tk.Label(canvas, text="文字を入力して下さい", bg="white").place(x=10, y=10) inputkanji = tk.Entry(width=50) inputkanji.place(x=10, y=35) outputkanji =tk.StringVar() kfont = font.Font(family=u'MS 明朝', size=250, weight='bold') def command1(): outputkanji = inputkanji.get() tk.Label(canvas, text=outputkanji, font=kfont, bg="white").place(x=10, y=120) cmdbtn = tk.Button(canvas, text="拡大",padx=10, pady=5, command=command1).place(x=10, y=70) clsbtn = tk.Button(canvas, text="終了", padx=10, pady=5, fg="red", command=quit).place(x=70, y=70) root.mainloop()
上記のプログラムで下記のプラグラムが作成されます。入力ボックスに『霞』と入力し、拡大ボタンを押すと、下に『霞』が大きく表示されます。では、解説していきます。
1, 2行:ライブラリの導入の記述になります。プログラム内でフォントを変更するので扱うことになるので、fontの関数を呼び出します。
4, 5行:プログラムのタイトルを設定します。
7, 8行:GUIの設定です。サイズ(高さ=500、幅=450)、背景(白)を設定しています。
10行目:ラベルを作成し、プログラムの手順を示します。
12, 13行:文字の入力ボックスを作成します。
15, 16行目:GUIに出力する文字、及びそのフォントを設定します。
出力する文字は、入力する文字によって変わる為、『StringVar()』を使うようにして下さい。そうしなければ、入力文字を変えても、以前に表示された文字が出続けることになります。
familyはフォントの種類を入力します。フォントはMS明朝にしています。漢字を表記するには最適なゴシックだと思います。『u’MS 明朝’』と、『u』を付けている理由は、PYTHONにunicode(日本語)だと認識させる為です。例えば、『arial』というフォントであれば、アルファベットなので、『u』は必要ありません。
sizeはフォントの大きさです。自分が見やすい大きさに設定して下さい。
weightはフォントを太字にすることを指定しています。
18~20行目:文字拡大のプログラム『command1』の定義になります。
23~25行目:『拡大』のボタンを作成します。このボタンを押すと、『command1』が呼び出されます。
27~30行目:『終了』ボタンを作成します。プログラムを終了させます。tkineterでは『終了』する時は、どのプログラムでも『quit』を使うので、是非、憶えておいてください
32行目:『root.mainloop()』はGUIを実行するプログラムになります。これがないとGUIは立ち上がりません。
以上で終了です!
まとめ
いかがだったでしょうか。
今回は比較的簡単だったと思います。
文字を拡大するプログラムを作った理由は、アニメ『鬼滅の刃』に出てくる漢字の書き方を調べたかったからです。『鬼滅の刃』では、漢字が沢山出てくるのですが、それらの文字をペンで書く時に、画数が多く、書けない時が多いです。そこで、拡大してみようと思った訳です。
自己満のプログラムですが、丁度、tkinterの復習になったのではないでしょうか。
コメント