Python獲取Win7,Win10系統縮放大小


使用pywin32調用windows系統接口。
利用GetDeviceCaps獲取指定設備的設備信息。
具體參考[https://docs.microsoft.com/en-us/windows/desktop/api/wingdi/nf-wingdi-getdevicecaps]
實現如下

def get_dpi():
    hDC = win32gui.GetDC(0)
    dpi = win32print.GetDeviceCaps(hDC, win32con.LOGPIXELSX)
    return dpi

win10下。如果有縮放,以上代碼總只能獲取到dpi為96,好像沒什么卵用

以下代碼能獲取到屏幕實際像素,即使縮放了。也能正確獲取

def get_dpi():
    hDC = win32gui.GetDC(0)
    #橫向分辨率
    HORZRES = win32print.GetDeviceCaps(hDC, win32con.DESKTOPHORZRES)
    #縱向分辨率
    VERTRES = win32print.GetDeviceCaps(hDC, win32con.DESKTOPVERTRES)
    return HORZRES,VERTRES

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM