Как разместить обрезанное изображение на холсте Tkinter в Python - PullRequest
2 голосов
/ 04 февраля 2012

Я нашел много похожих вопросов, но не совсем решение этого случая: я хочу

  1. Загрузить файл изображения с диска
  2. Обрезать его (ленивый или нет))
  3. Поместите его на холст TKinter

И, о, было бы даже лучше, если бы шаг 1 не обязательно был gif-файлом, но даже если онЯ буду счастлив.Вот и все ..

Я могу загрузить файл, я могу обрезать его (в PIL) Я могу поместить его на холст (в TKinter), но я не могу объединить все это .. (Так что может быть достаточно простого приведения из PIL в TKinter?) Конечно, я новичок в TKinter.

1 Ответ

4 голосов
/ 04 февраля 2012

В PIL.

from Tkinter import *
from PIL import Image, ImageTk

root = Tk()
canvas = Canvas(root, width=500, height=500)
canvas.pack()

im = Image.open("image.png")
cropped = im.crop((0, 0, 200, 200))
tk_im = ImageTk.PhotoImage(cropped)
canvas.create_image(250, 250, image=tk_im)

root.mainloop()
имеется модуль ImageTk.
...