PROGRAM PYTHON

tkinter超入門【第25回 キャンバス⑨~画像】

 

 

キャンバスで画像を表示しよう

前回はCanvasウィジェットを使ってビットマップを表示しました。
今回はキャンバス上に画像を表示してみましょう。

 

画像を読み込む

Canvasウィジェットで画像を表示する前に、PhotoImageクラスで画像を読み込みます。
ただし、PhotoImageクラスが対応している画像形式は、GIF、PGM、PPM、PNGです。
JPEGなど、上記以外の画像形式には対応していません。
他の画像形式を扱うには、Python Imaging Library (PIL)の後継であるPillowを使います。
なお、PIL自体は2010年前後に更新を停止しています。

オブジェクト名 = tkinter.PhotoImage(file="ファイル名")

 

Canvasウィジェットで画像を表示する

Canvasウィジェットで画像を表示するメソッドは、以下の通りです。

オブジェクト名.create_image(座標オプション)

座標の意味は、anchorオプションの指定によって異なります。
デフォルトでは表示する画像の中心位置になります。

 

create_image()のオプション

create_image()の主なオプションは、以下の通りです。

オプション名 内容
image 画像オブジェクト
anchor 画像の位置
center 画像の中心。デフォルト
n 画像の上端
s 画像の下端
w 画像の左端
e 画像の右端
nw 画像の左上端
ne 画像の右上端
sw 画像の左下端
se 画像の右下端

 

Canvasウィジェットに画像を表示するプログラム

Canvasウィジェットに画像を表示するプログラムは、以下のようになります。
今回使用した画像のサイズは、301x200ドットになります。
なお、PhotoImageクラスで画像を読み込む前に、必ず tkinter.Tk()で画面を作成する必要があります

プログラムを実行すると、以下のような画面が表示されます。

tkinter24-1

 

 

-PROGRAM, PYTHON
-