如何制作具有将图像旋转 180 度的功能的按钮?

How do I make a button with a function which rotates an image 180 Degrees?

如何制作一个具有将图像旋转 180 度功能的按钮?我的图片存放的变量是

img = ImageTk.PhotoImage("spidey.png")

我已经导入了PIL库的ImageTk和Image。我也想把我的图片放在我根的中间 window.

from tkinter import *

from PIL import ImageTK, Image root=Tk()

root.title("Image Viewer")

root.geometry("550x650")

root.configure(background="black")

img = ImageTk.PhotoImage("spidey.png")

def rotate():

root.mainloop()
到目前为止,这是我的代码。请帮帮我。谢谢。

我试着写 Img.rotate(180_degrees) 但没成功。我希望它能在第一次工作,但没有。所以再一次,请帮助我。

必须在调用 Image.open 之后但在调用 ImageTk.PhotoImage 之前对图像应用旋转。传递给 .rotate 的参数只是一个数字(代表度数),因此您还需要 Img.rotate(180) 而不是 Img.rotate(180_degrees)

import tkinter as tk
from PIL import ImageTk, Image

window = tk.Tk()
pic = Image.open("yourpic.png")
rotatedPic = pic.rotate(180)
finalPic = ImageTk.PhotoImage(rotatedPic)

label = tk.Label(master=window, image=finalImage)
label.place(x=0, y=0, width=200, height=200)

请注意,您还需要一些东西来显示里面的图片。您可以使用 canvas 元素和 create_image,或者(如我的示例所示)使用带有 image 属性 的小部件并将旋转的图像分配给 属性.

这是 .rotate 文档的来源: https://pythonexamples.org/python-pillow-rotate-image-90-180-270-degrees/