【问题标题】:Detect whether running on HiDPI display检测是否在 HiDPI 显示器上运行
【发布时间】:2013-03-13 21:45:53
【问题描述】:

如何从 SWT 应用程序中检测它正在 HiDPI(“视网膜”)显示器上运行?

【问题讨论】:

    标签: java macos swt retina-display


    【解决方案1】:

    Device 类是Display 的超类,有一个名为getDPI() 的方法,它将返回显示器的 DPI 值:

    Device device = shell.getDisplay();
    System.out.println(device.getDPI());
    

    【讨论】:

    • 我知道,但是如何检测 OS X 是否在“retina”显示模式下运行?
    • 那么,除了 DPI 设置,您还需要了解什么?我对 OSX 了解不多,但由于 SWT 对每个平台(几乎)都有相同的 API,我的猜测是,您无法从 SWT 获取该信息。您也许可以在 SWT 的命令行中运行某些东西并解析结果...
    • 对于 OS X 上的“retina/HiDPI”模式,一个虚拟像素映射到 2x2 物理像素(例如,1920x1200 显示器以 960x600 HiDPI 分辨率运行)。这会产生非常平滑的绘图。
    猜你喜欢
    • 1970-01-01
    • 2012-09-20
    • 2011-08-14
    • 2021-02-18
    • 2011-12-25
    • 1970-01-01
    • 1970-01-01
    • 2019-05-14
    相关资源
    最近更新 更多