欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

pyqt 窗口图片自适应

程序员文章站 2024-03-21 18:02:58
...

最近,又用 Pyqt5 写了一个新手指引的小界面,今天测试的同学抛出了一个异常。
pyqt 窗口图片自适应

屏幕分辨率过低的时候,界面展示不全。

刚拿到反馈的时候很疑惑,因为之前是做过窗口最大化处理的,又通读一遍代码,找到了对应的问题。

我在展示图片的时候,没有将图片和窗口做适配,只是最大化了展示窗口,但是展示图片的大小还是原始尺寸,于是又新增了一个图片随窗口变化等比例缩放的函数:

def m_resize(self,w_box, h_box, pil_image): # 参数是:要适应的窗口宽、高、Image.open后的图片

    w, h = pil_image.width(), pil_image.height() # 获取图像的原始大小

    f1 = 1.0*w_box/w
    f2 = 1.0 * h_box / h

    factor = min([f1, f2])

    width = int(w * factor)

    height = int(h * factor)
    #return pil_image.resize(width, height)
    return pil_image.scaled(width, height)

再次测试时,问题解决。

免费下载试用:https://support.i-search.com.cn/

相关标签: IT 技术 分享