我要做一些低级渲染的东西,但我需要知道真实的显示 DPI 才能使所有东西都具有正确的大小。
我找到了一种方法来做到这一点:
java.awt.Toolkit.getDefaultToolkit().getScreenResolution()
- 但它在带有“retina”显示的 OS X 上返回不正确的结果,它是真实 DPI 的 1/2。(在我的情况下应该是 220,但它是 110)
因此,要么必须提供其他一些更正确的 API,要么我需要为 OS X 实现一个 hack——以某种方式找到当前显示是否是“视网膜”。但我也找不到任何方法来查询这些信息。有这个答案,但在我的机器上Toolkit.getDefaultToolkit().getDesktopProperty("apple.awt.contentScaleFactor")
只返回空值。
我该怎么做?