pyqt 窗口图片自适应

最近,又用 Pyqt5 写了一个新手指引的小界面,今天测试的同窗抛出了一个异常。函数

pyqt 窗口图片自适应

屏幕分辨率太低的时候,界面展现不全。测试

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

我在展现图片的时候,没有将图片和窗口作适配,只是最大化了展现窗口,可是展现图片的大小仍是原始尺寸,因而又新增了一个图片随窗口变化等比例缩放的函数:3d

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

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)

再次测试时,问题解决。blog

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

相关文章
相关标签/搜索