как встроить изображение в текстовый виджет - PullRequest
4 голосов
/ 20 июня 2011

Я знаю, что можно встроить изображение в текстовый виджет Tkinter, но я не смог найти простой пример кода. В частности, мне нужно встроить JPG, поэтому в соответствии с документами я думаю, что мне нужно использовать класс фотоизображений

Я пытался использовать это:

  img=PhotoImage ( file=imgfn )
  text.image_create(image=img)

где imgfn - имя файла изображения, а text - мой текстовый виджет, но я получаю "_tkinter.TclError: не удалось распознать данные в файле изображения ..."

спасибо за любую помощь!

1 Ответ

5 голосов
/ 20 июня 2011

PhotoImage обрабатывает только файлы GIF и PGM/PPM. Чтобы использовать JPEG с Tkinter, вы можете использовать Python Imaging Library (PIL) для создания PhotoImage.

from PIL import Image, ImageTk

img = Image.open("yourimg.jpg")
photoImg = ImageTk.PhotoImage(img)

В качестве альтернативы вы можете использовать один из других поддерживаемых форматов для PhotoImage, если это возможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...