我需要将信息从Xrandr获取到我的软件中。假设这是我从xrandr -q
的输出:
Screen 0: minimum 8 x 8, current 1920 x 1968, maximum 32767 x 32767
LVDS1 connected primary 1366x768+309+1200 (normal left inverted right x axis y axis) 277mm x 156mm
1366x768 60.02*+
1360x768 59.80 59.96
1280x720 60.00
1024x768 60.00
1024x576 60.00
960x540 60.00
800x600 60.32 56.25
864x486 60.00
640x480 59.94
720x405 60.00
680x384 60.00
640x360 60.00
DP1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 59.95*+
1920x1080 60.00
1600x1200 60.00
1680x1050 59.95
1280x1024 60.02
1280x960 60.00
1024x768 60.00
800x600 60.32
640x480 60.00
720x400 70.08
我想要的数据是可能的解决方案以及可能的刷新率。到目前为止,我的软件读取了/sys/class/drm/card0-DP-1
的功能,依此类推,但我找不到有关任何解决方案可能刷新率的任何信息。有任何暗示吗?
我也想知道是否使用了 --above
, --below
, --left-of
, --right-of
之类的命令,这意味着在设置事物时是否相互排列。有什么方法可以确定?
我真正不想做的是从终端解析Xrandr输出。因此,问题是是否有人知道如何以一种很好的方式做到这一点。我在GO环境中工作,但没有找到任何解决我的问题的软件包。
欢迎任何帮助。
您可能想查看github.com/BurntSushi/xgb
软件包这是XCB的纯粹执行并且它可以访问randr
设施。