我正在尝试在python 2.7中创建一个tkinter项目,用户可以在其中调整窗口大小,窗口内的所有内容都将随之扩展。这意味着画布,画布中的形状,最重要的是PhotoImages将随窗口缩放。我的问题是,对于我的生活,我无法让我的图像正确调整大小。
我知道为此目的存在subsample
和zoom
,但首先是
plantImage = PhotoImage(file="images/Arable_Cell.gif")
plantImage.subsample(2, 2)
canvas.create_image(0, 0, anchor=NW, image=plantImage)
50x50像素图像没有明显变化,变焦(2,2)相同。 重要的是要注意我知道PIL存在但是为了这个项目的目的我不能下载任何额外的库。 那么我做错了什么?
答案 0 :(得分:8)
根据docs,
子样本(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)