是否可以在 macOS 上使用 Python 获取给定显示器的物理尺寸(毫米或其他)?
我正在查看 AppKit 的 NSScreen,但它只提供像素分辨率(通过
frame
)并且似乎没有报告物理尺寸。我不确定我还能采取什么其他方法。
CGDisplayScreenSize
获取此信息,根据文档,该信息返回“指定显示器的尺寸(以毫米为单位)”。
QuartzPython 库似乎有一个绑定:
from Quartz import CGDisplayScreenSize, CGMainDisplayID
display_id = CGMainDisplayID()
dimensions = CGDisplayScreenSize(display_id)
print(dimensions)
返回显示器的宽度和高度(以毫米为单位)。
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