我正在尝试在python 2.7中创建一个tkinter项目,用户可以在其中调整窗口的大小,并且窗口中的所有内容都将随之缩放。这意味着画布,画布中的形状以及最重要的是PhotoImages将随窗口缩放。我的问题是我一生都无法正确调整图像大小。我知道subsample并且zoom为此目的而存在,但是首先
subsample
zoom
plantImage = PhotoImage(file="images/Arable_Cell.gif") plantImage.subsample(2, 2) canvas.create_image(0, 0, anchor=NW, image=plantImage)
在50x50像素的图像中没有明显变化,对于zoom(2,2)也相同。重要的是要注意我知道PIL存在,但是出于本项目的目的,我无法下载任何其他库。那我在做什么错?
根据文档,
子样本(self,x,y =’‘) 基于与此小部件相同的图像返回一个新的PhotoImage,但仅使用每个第X或第Y个像素。
子样本(self,x,y =’‘)
基于与此小部件相同的图像返回一个新的PhotoImage,但仅使用每个第X或第Y个像素。
即subsample不修改图像,而是创建一个新图像,因此请尝试以下操作:
originalPlantImage = PhotoImage(file="images/Arable_Cell.gif") displayPlantImage = originalPlantImage.subsample(2, 2) canvas.create_image(0, 0, anchor=NW, image=displayPlantImage)