问题
我正在转换我的配置多头显示器使用一些相当丑陋的脚本到 /etc/X11/xorg.conf.d/10-monitor.conf。我的布局有两台 1920x1200 的显示器,其中一台向左旋转。脚本能够使用以下命令很好地配置它:
xrandr \
--output "DP-1" \
--mode 1920x1200 \
--pos 1200x360 \
--rotate normal \
--primary \
--output "DP-2" \
--mode 1920x1200 \
--pos 0x0 \
--rotate left
我尝试将其转换为配置:
Section "Monitor"
Identifier "DP-1"
Option "Primary" "true"
Option "Position" "1200 360"
EndSection
Section "Monitor"
Identifier "DP-2"
Option "Rotate" "left"
EndSection
不幸的是,这会产生副作用,将旋转屏幕的分辨率设置为 1600×1200,尽管首选模式仍然是 1920×1200:
$ xrandr
[…]
DP-2 connected 1200x1600+0+0 left (normal left inverted right x axis y axis) 518mm x 324mm
1920x1200 59.95 +
1920x1080 60.00
1600x1200 60.00*
[…]
如何编写将使用旋转显示器的首选分辨率 1920x1200 的配置?
非解决方案
-
Section "Screen" Driver "radeon" SubSection "Display" Virtual 3120 1920 EndSubSection EndSection
Option "PreferredMode" "1920x1200"
明确设置 DP-2 ( )的首选模式会导致其他屏幕缩小到1600×1200,所以这可能是一个线索。
解决方法
使用 强制分辨率xrandr --output DP-2 --mode 1920x1200
。
答案1
最终有效的是明确设置虚拟屏幕尺寸和的首选模式两个都屏幕数量:
Section "Monitor"
Identifier "DP-1"
Option "Primary" "true"
Option "Position" "1200 360"
Option "PreferredMode" "1920x1200"
EndSection
Section "Monitor"
Identifier "DP-2"
Option "Rotate" "left"
Option "PreferredMode" "1920x1200"
EndSection
Section "Screen"
Driver "radeon"
SubSection "Display"
Virtual 3120 1920
EndSubSection
EndSection