【发布时间】:2013-07-19 08:32:37
【问题描述】:
我正在开发一款可在 iOS 和桌面(Windows、Mac、Linux)上运行的多平台游戏。我希望游戏能够根据屏幕分辨率调整某些 UI 元素的大小英寸。这个想法是,如果一个按钮在任何界面中应该是 1/2 英寸左右,它就会自动缩放到那个大小。
现在对于 iOS 设备,这个问题可以通过蛮力技术很好地解决。您可以查找设备的类型并使用硬编码表来确定每个设备的屏幕尺寸(以英寸为单位)。不是最优雅的解决方案,但足够了。
台式机是棘手的。我希望和希望存在一种机制,(某些?)监视器通过该机制向操作系统报告其实际屏幕尺寸(以英寸为单位)。如果该机制存在并且我可以以某种方式访问它,那么至少对于某些监视器,我可以获得很好的数字。但我从未在任何主要的操作系统 API 中遇到过这样的概念。
有没有办法在 Win32 中以英寸为单位询问屏幕尺寸?如果有,是否有实际提供此信息的监视器?
(如果答案是否定的:天哪,这看起来不是很有用吗?)
【问题讨论】:
-
似乎这可能最好由平台分开,因为每个平台都有不同的正确答案。您已经有了针对 Windows 的答案,所以我建议将此作为您的 Windows 问题并针对 OS X 发布另一个问题。(我已经为您提供了答案,我会在该问题上发布它。)
-
stackoverflow.com/questions/12589198/…>
标签: windows api winapi graphics screen