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/圖片

相關文章
相關標籤/搜索