如何使用 xrandr 更改首选分辨率?

如何使用 xrandr 更改首选分辨率?

我正在使用分割器将 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

(我已编辑答案,并提供更详细的细节和测试)

至少有两种方法可以改变首选模式:

  1. 使用 X11 配置。比方法 #2 更复杂一点。
  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

使其适应新分辨率所需的值。

有关的

  1. 如何更改 xrandr 上的首选模式?
  2. 我如何才能使 xrandr 定制永久化?
  3. https://unix.stackexchange.com/questions/125556/how-can-i-make-xrandr-changes-persist
  4. https://unix.stackexchange.com/questions/94734/how-to-modify-the-default-setting-adopted-by-xrandr-when-connecting-an-external
  5. 如何使用 xrandr 保存新的分辨率设置?
  6. xrandr 中自动添加模式的最佳位置
  7. 使 xRandR 更改永久生效
  8. https://linux.die.net/man/1/cvt
  9. https://linux.die.net/man/1/gtf
  10. https://linux.die.net/man/1/xrandr

相关内容