我知道在 X 显示服务器中您可以执行以下操作:
$ xdpyinfo | grep 点
但是如何在没有 xdpyinfo 的 Ubuntu Touch 上的 Mir 显示服务器中实现这一点?
答案1
我在 Telegram 上的 Ubuntu App Dev 小组中找到了 Michael Zanetti 的帮助,他向我介绍了 mirout 工具 (/usr/bin/mirout):
$MIR_SOCKET=/var/run/mir_socket mirout
这里,MIR_SOCKET 变量的用途与 X 显示服务器上的 DISPLAY 变量的用途类似。
此工具会输出屏幕分辨率和屏幕的物理尺寸,如下所示(来自魅族 MX4 Ubuntu 版):
连接到服务器:卡 0:最多 3 个同时输出
输出 1:卡 0、LVDS、已连接、1152x1920+0+0、已使用、开启、60mm x
101 毫米 (4.6"),正常
1152x1920 60.72*+ Output 2: Card 0, DisplayPort, disconnected Output 3: Card 0, Virtual, disconnected 1920x1080 60.00*+
因此你只需要进行简单的数学运算即可获得 DPI:
DPI = √(w²+h²) / 对角线
因此在这个例子中:
DPI = √(1152²+1920²) / 4.6 英寸
DPI = 2239.085527621 / 4.6”
DPI = 大约 486