OSX App:获取用户显示的最大分辨率(Swift)

时间:2015-10-02 20:40:58

标签: macos swift resolution screen-resolution screen-size

我正在尝试获取用户显示器的最大分辨率 - 不一定是当前分辨率,而是显示器支持的最大分辨率。我知道我可以使用类似this的方式获得当前分辨率,但我需要最大值(即:在MBP 13英寸时,分辨率为2560x1600)。

我知道我可以使用类似this之类的东西在终端中执行此操作,但我想避免尝试在终端中执行hack-y,而是使用Swift执行此操作。有关如何做到这一点的任何建议?感谢。

1 个答案:

答案 0 :(得分:1)

您需要使用Quartz Display Services。首先,获取显示列表,可能是CGGetActiveDisplayList。然后,对于每个显示,使用CGDisplayCopyAllDisplayModes。迭代模式阵列,使用CGDisplayModeGetWidthCGDisplayModeGetHeight找出哪个是最高分辨率。