Top.Mail.Ru
Ответы

Как я могу изменить размер картинки в python tkinter?

123456789101112131415161718
 import tkinter as tk 
from tkinter import * 
from PIL import Image, ImageTk 
window = tk.Tk() 
 
window.attributes('-fullscreen', True) 
window.configure(background='black') 
window.title("title") 
 
img = ImageTk.PhotoImage(file='img.jpg') 
imgLabel = Label(window, image=img) 
imgLabel.place(x=0, y=0) 
 
label = tk.Label(window, text="text", bg='#000000', fg='#f00') 
label.config(font=("Courier", 20)) 
label.place(relx = 0.5, rely = 0.5, anchor = 'center') 
 
window.mainloop() 
По дате
По рейтингу
Аватар пользователя
Просветленный

Для изменения размера картинки в tkinter с использованием PIL (Python Imaging Library), вы можете использовать метод resize из модуля PIL.Image перед тем, как создать объект ImageTk.PhotoImage. Вот как это можно сделать:

1234567891011121314151617181920212223242526272829
 import tkinter as tk 
from tkinter import * 
from PIL import Image, ImageTk # pip install pillow
 
def resize_image(image_path, size): 
    img = Image.open(image_path) 
    resized_img = img.resize(size, Image.Resampling.LANCZOS) 
    return ImageTk.PhotoImage(resized_img) 
 
window = tk.Tk() 
 
window.attributes('-fullscreen', True) 
window.configure(background='black') 
window.title("title") 
 
# Задайте размеры для изменения размера изображения 
new_size = (800, 600)  # Тут меняется размер твоего окна
 
# Используйте функцию resize_image для изменения размера изображения 
img = resize_image('img.jpg', new_size) 
imgLabel = Label(window, image=img) 
imgLabel.place(x=0, y=0) 
 
label = tk.Label(window, text="text", bg='#000000', fg='#f00') 
label.config(font=("Courier", 20)) 
label.place(relx=0.5, rely=0.5, anchor='center') 
 
window.mainloop() 
 


В этом коде функция resize_image принимает путь к изображению и новый размер (кортеж с шириной и высотой). Затем открывает изображение, изменяет его размер и возвращает объект ImageTk.PhotoImage с изменённым размером. Вы можете настроить размер по вашему усмотрению, изменив значение переменной new_size.

Чтобы в коде не возникало ошибок нужно чтобы был файл img.jpg