Работа с изображением. Изменение размера картинки под объект.

weamagic

Пользователь
Пользователь
Июл 11, 2020
149
13
18
Добрый день.
ОС Win10, Python 3.7, Tkinter 8.6.8, PIL 7.0
Есть картинки различных размеров, которые надо отобразить на форме. Для этих целей использую следующий код:

Python:
from tkinter import *
from PIL import ImageTk as ImTK
from  PIL import Image as IMG

win=Tk()
win.geometry("1024x720")
canvas=Canvas()
canvas.place(x=5, y=5, width=1000, height=1000)
vis_map=IMG.open('путь')
res_map=vis_map.resize((1000,1000))
pb=canvas.create_image(0,0, image=res_map)
win.mainloop()

Картинка вставляется корректно, но без изменения размера. Подскажите, пожалуйста, где ошибка.
 

stud_55

Модератор
Команда форума
Модератор
Апр 3, 2020
1 522
672
113
Вот пример вставки картинки с изменением размера:
Python:
import tkinter as tk
from PIL import ImageTk
from PIL import Image

win = tk.Tk()
win.geometry("1024x720")
canvas = tk.Canvas()
canvas.place(x=5, y=5, width=1000, height=1000)
img = Image.open('image.jpg')
img = img.resize((250, 250), Image.ANTIALIAS)
img_tk = ImageTk.PhotoImage(img)

canvas.image = img_tk
canvas.create_image(0, 0, image=canvas.image, anchor="nw")

win.mainloop()
 
  • Мне нравится
Реакции: Student

weamagic

Пользователь
Пользователь
Июл 11, 2020
149
13
18
Спасибо. Сработало.
 

Форум IT Специалистов