python里窗口大小的单位_python界面上的图片缩放,根据窗口大小

为了方便在tkinter的界面上显示完整的图片、原比例的图片,找了不少帖子,找到了个有用的例子,在最后封装成了函数(方便使用)

显示本地上的图片并且随着窗口而改变大小的代码(非动态的)

代码参考了→https://blog..net/yangdashi888/article/details/73321919

下面的换一下图片路径就能看到效果了

import io

from PIL import Image, ImageTk

import tkinter as tk

def resize(w, h, w_box, h_box, pil_image):

'''

resize a pil_image object so it will fit into

a box of size w_box times h_box, but retain aspect ratio

对一个pil_image对象进行缩放,让它在一个矩形框内,还能保持比例

'''

f1 = 1.0*w_box/w # 1.0 forces float division in Python2

f2 = 1.0*h_box/h

factor = min([f1, f2])

#print(f1, f2, factor) # test

# use best down-sizing filter

width = int(w*factor)

height = int(h*factor)

return pil_image.resize((width, height), Image.ANTIALIAS)

root = tk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值