获取 MacOS 中屏幕的物理尺寸

问题描述 投票:0回答:2

是否可以在 macOS 上使用 Python 获取给定显示器的物理尺寸(毫米或其他)?

我正在查看 AppKit 的 NSScreen,但它只提供像素分辨率(通过

frame
)并且似乎没有报告物理尺寸。我不确定我还能采取什么其他方法。

python macos appkit
2个回答
0
投票

您应该能够从

CGDisplayScreenSize
获取此信息,根据文档,该信息返回“指定显示器的尺寸(以毫米为单位)”。

QuartzPython 库似乎有一个绑定:

from Quartz import CGDisplayScreenSize, CGMainDisplayID display_id = CGMainDisplayID() dimensions = CGDisplayScreenSize(display_id) print(dimensions)
    

0
投票
您可以使用

Quartz.CGDisplayScreenSize


返回显示器的宽度和高度(以毫米为单位)。


func CGDisplayScreenSize(_ display: CGDirectDisplayID) -> CGSize


import Quartz def main() -> None: main_display_id = Quartz.CGMainDisplayID() width_mm, height_mm = Quartz.CGDisplayScreenSize(main_display_id) print(f'Width: {width_mm} mm, Height: {height_mm} mm') if __name__ == '__main__': main()

输出(使用M1 Macbook Air):

Width: 286.8705839269302 mm, Height: 179.29411495433135 mm
    
© www.soinside.com 2019 - 2024. All rights reserved.