我正在使用分割器将 1920x1080 显示器显示克隆到电视 (1366x768)。它工作正常,但重新启动会将所有图标移到桌面上,迫使它们进入较低分辨率的空间。拔下电视 HDMI 后,图标会停留在所需位置,并xrandr
显示所选 (标有星号 *) 和首选 (标有加号 +) 分辨率 1920x1080。
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
HDMI-A-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
1920x1080 60.00*+ 50.00 59.94
1680x1050 59.88
<snipped>
但只要电视插上电源,xrandr
节目
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
HDMI-A-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 853mm x 480mm
1366x768 59.81 +
1920x1080 60.00* 50.00 59.94
1280x720 60.00 50.00 59.94
1024x768 60.00
800x600 60.32
720x576 50.00
720x480 60.00 59.94
640x480 60.00 59.94
720x400 70.08
有没有办法将首选的“+”设置到 1920x1080 线?
答案1
(我已编辑答案,并提供更详细的细节和测试)
至少有两种方法可以改变首选模式:
- 使用 X11 配置。比方法 #2 更复杂一点。
- 使用
xrandr
。可以将这些更改设为永久更改,但“使用 xrandr 设置有两个缺点.xprofile
。首先,它发生在启动过程的相当晚的时候,因此您会在初始屏幕绘制期间看到一些分辨率调整;在某些情况下,面板窗口可能会因此调整不正确。其次,由于这是每个用户的设置,它不会影响其他用户的分辨率,也不会改变登录屏幕上的分辨率。”(来源)。
请注意,使用一种方法添加模式并使用另一种方法设置活动模式可能不会成功,尤其是考虑到方法#2的注释。
X11 配置
基于这和这,我整理了文件/usr/share/X11/xorg.conf.d/10-monitor.conf
。我在这里使用 Bodhi Linux。Ubuntu 中的位置可能是/etc/X11/xorg.conf.d/<something>.conf
,或者添加到/etc/X11/xorg.conf
,请参阅这,这和这。
Section "Monitor"
Identifier "Main Monitor"
Modeline "1344x744_60.00" 80.75 1344 1408 1544 1744 744 747 757 773 -hsync +vsync
Modeline "1344x768_60.00" 84.00 1344 1416 1552 1760 768 771 781 798 -hsync +vsync
Option "PreferredMode" "1344x744_60.00"
EndSection
Section "Screen"
Identifier "Primary Screen"
Device "VGA [AMD/ATI] Wrestler [Radeon HD 6310]"
Monitor "Main Monitor"
SubSection "Display"
Modes "1344x744_60.00" "1344x768_60.00"
EndSubSection
EndSection
Section "Device"
Identifier "VGA [AMD/ATI] Wrestler [Radeon HD 6310]"
Driver "radeon"
EndSection
使其适应新分辨率所需的值。
.xprofile
我添加了~/.xprofile
包含
xrandr --newmode "1344x768_60.00" 84.00 1344 1416 1552 1760 768 771 781 798 -hsync +vsync
xrandr --newmode "1344x744_60.00" 80.75 1344 1408 1544 1744 744 747 757 773 -hsync +vsync
xrandr --addmode LVDS "1344x768_60.00"
xrandr --addmode LVDS "1344x744_60.00"
xrandr --output LVDS --mode "1344x744_60.00" --preferred
使其适应新分辨率所需的值。
有关的:
- 如何更改 xrandr 上的首选模式?
- 我如何才能使 xrandr 定制永久化?
- https://unix.stackexchange.com/questions/125556/how-can-i-make-xrandr-changes-persist
- https://unix.stackexchange.com/questions/94734/how-to-modify-the-default-setting-adopted-by-xrandr-when-connecting-an-external
- 如何使用 xrandr 保存新的分辨率设置?
- xrandr 中自动添加模式的最佳位置
- 使 xRandR 更改永久生效
- https://linux.die.net/man/1/cvt
- https://linux.die.net/man/1/gtf
- https://linux.die.net/man/1/xrandr