はじめに
環境:Python 3.10.1
create_imageは、create_image(<水平中心位置>, <垂直中心位置>, image=<画像>)
でCanvasに任意の画像を表示するメソッドです。
このとき、<画像>は、与え方はいろいろありますが、PILのImageTkを使用すると以下のようになります。
from PIL import ImageTk
img = ImageTk.PhotoImage(file="tmp.png")
サンプルコード
from PIL import ImageTk
import tkinter
app = tkinter.Tk()
app.title("App Title")
img = ImageTk.PhotoImage(file="tmp.png")
image = tkinter.Canvas(
app,
width = 500,
height = 100,
bg = "white",
)
image.create_image(
250, 50,
image=img, # こっちはうまくいく。
# image=ImageTk.PhotoImage(file="tmp.png"), # こうするとうまくいかない。
)
image.pack()
app.mainloop()
コメント