我正在开发一款在 iOS 和桌面(Windows、Mac、Linux)上运行的多平台游戏。我希望游戏能够根据屏幕分辨率(以英寸为单位)调整某些 UI 元素的大小。这个想法是,如果一个按钮在任何界面中应该是 1/2 英寸左右,它将自动缩放该大小。
现在对于 iOS 设备,这个问题可以使用蛮力技术很好地解决。您可以查找设备的类型并使用硬编码表来确定每个设备的屏幕尺寸(以英寸为单位)。不是最优雅的解决方案,但足够了。
台式机是棘手的。我希望并希望存在一种机制,通过该机制(某些?)监视器向操作系统报告其实际屏幕尺寸(以英寸为单位)。如果该机制存在并且我可以通过某种方式访问它,那么至少对于某些监视器来说,我可以获得不错的数字。但我从未在任何主要的操作系统 API 中遇到过这样的概念。
有没有办法在Win32中以英寸为单位询问屏幕尺寸?如果是这样,是否有实际提供此信息的监视器?
(如果答案是否定的:天哪,这看起来不是很有用吗?)