7

我有一台 4K 显示器 (3840 x 2160) 和两台 QHD 显示器 (2560 x 1440),我想将它们并排放置。但目前这是不可能的,因为所需的水平虚拟分辨率为 8960 像素(3840+2560+2560),但 X 服务器设置的最大(水平)虚拟分辨率为 8192 像素。有什么办法可以将最大虚拟分辨率提高到 8192x8192 像素以上?

我到目前为止所尝试的:

  • 我没有xorg.conf文件 - 我尝试自己手动创建一个文件,包括"Display"子部分并在其中设置不同的"Virtual"值,重新启动,没有任何改变。
  • 尝试了将和/或参数设置为所需最大值 ( ) 的各种xrandr命令变体,再次无济于事。(输出:)--fb--panning8960x2160+0+0xrandr: screen cannot be larger than 8192x8192 (desired size 8960x2160)

我确实在某处(编辑: 这里)读到英特尔的图形处理器不支持比 8192x8192 像素更大的虚拟屏幕分辨率(我的系统使用Core i7-6700HQ带有图形处理器的 CPU Intel HD Graphics 530),但不幸的是我无法确认此信息 - 希望不是这种情况。

编辑:确实可能不是这样:

#: glxinfo -l | grep GL_MAX_TEXTURE_SIZE
GL_MAX_TEXTURE_SIZE = 16384
GL_MAX_TEXTURE_SIZE = 16384

我的 xrandr 输出(我目前的第三台显示器位于右下角,因此虚拟屏幕分辨率为 8192x3600):

Screen 0: minimum 320 x 200, current 8192 x 3600, maximum 8192 x 8192
eDP-1 connected primary 3840x2160+2560+0 (normal left inverted right x axis y axis) 346mm x 194mm
3840x2160     60.00*+
2048x1536     60.00
1920x1440     60.00
1856x1392     60.01
1792x1344     60.01
1600x1200     60.00
1400x1050     59.98
1280x1024     60.02
1280x960      60.00
1024x768      60.04    60.00
960x720       60.00
928x696       60.05
896x672       60.01
800x600       60.00    60.32    56.25
700x525       59.98
640x512       60.02
640x480       60.00    59.94
512x384       60.00
400x300       60.32    56.34
320x240       60.05
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 connected 2560x1440+4519+2160 (normal left inverted right x axis y axis) 527mm x 296mm
2560x1440     59.95*+
2048x1152     59.90
1920x1200     59.95
1920x1080     60.00    50.00    59.94    24.00    23.98
1920x1080i    60.00    50.00    59.94
1600x1200     60.00
1680x1050     59.88
1280x1024     75.02    60.02
1280x800      59.91
1152x864      75.00
1280x720      60.00    50.00    59.94
1024x768      75.03    60.00
800x600       75.00    60.32
720x576       50.00
720x576i      50.00
720x480       60.00    59.94
720x480i      60.00    59.94
640x480       75.00    60.00    59.94
720x400       70.08
DP-2 connected 2560x1440+0+285 (normal left inverted right x axis y axis) 597mm x 336mm
2560x1440     59.95*+
1280x720      59.86
HDMI-2 disconnected (normal left inverted right x axis y axis)
4

1 回答 1

1

我能够通过以下步骤来解决此问题,以生成和修改xorg.conf文件并将其放入/etc/X11/xorg.conf.

我在 Ubuntu 16.04 上gnome-session-fallback使用metacity,每当我尝试使所有三个全分辨率时,我都会收到有关虚拟大小无法过去的错误8192x8192

我不确定你是否打开是否重要gnome unity metacity

重新启动之前 - 生成一个xorg.conf.new文件。

$ sudo X :2 -configure 
# will make a file /home/$USER/xorg.conf.new or ~/xorg.conf.new

$ cat ~/xorg.conf.new |grep Screen|more
Screen      0  "Screen0" 0 0
Screen      1  "Screen1" RightOf "Screen0"
Section "Screen"
Identifier "Screen0"
Section "Screen"
Identifier "Screen1"

例如,我有两个Screen Sections,我正在尝试使用 3 个显示器 - 我认为您不需要三个Screen Sections生成的显示器。

Monitor 1: 3840x2160 x 32 in
Monitor 2: 3840x2160 x 32 in
Monitor 3: 1920x1080 x 22 in

8192x8192如果您需要高于此大小,请检查您的 glx 是否可以处理。

glxinfo -l | grep GL_MAX_TEXTURE_SIZE
GL_MAX_TEXTURE_SIZE = 16384
GL_MAX_TEXTURE_SIZE = 16384

修改目录xorg.conf.new中的文件/home/username并从glxinfo命令中添加大小Virtual 16384

sudo nano ~/xorg.conf.new

在两个部分的 24小节Display下添加DepthScreenVirtual 16384

 Section "Screen"
 Identifier "Screen0"
 Device     "Card0"
 Monitor    "Monitor0"
 SubSection "Display"
    Viewport   0 0
    Depth     1
 EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     4
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     8
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     15
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     16
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     24
    Virtual 16384 16384  <-- ADD THIS.
 EndSubSection
 EndSection

 Section "Screen"
 Identifier "Screen1"
 Device     "Card1"
 Monitor    "Monitor1"
 SubSection "Display"
    Viewport   0 0
    Depth     1
 EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     4
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     8
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     15
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     16
EndSubSection
SubSection "Display"
    Viewport   0 0
    Depth     24
    Virtual 16384 16384 <-- ADD THIS.
 EndSubSection
 EndSection

复制xorg.xonf.new/etc/X11/xorg.conf然后重新启动。

  sudo cp /home/user/xorg.conf.new /etc/X11/xorg.conf # Modify user
  sudo shutdown -r now

当您重新登录时,将您的显示器设置为gnomemetacityunity任何您使用的东西。

更新:

重新启动、注销或解锁后,我发现显示器设置没有保存。

这个可能的gnome问题可能与此错误有关:

https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1292398

此修复程序是从此帖子的多个答案的一部分中找到的:

https://askubuntu.com/questions/6137/saving-monitor-settings

我更喜欢从终端运行这个脚本,因为我在登录后首先打开了一个。

首次使用错误配置登录 - 未正确放置监视器:

cd ~/.config
mv ~/.config/monitors.xml{,.bak}

现在使用系统设置设置您的显示器,以创建~/.config/monitors.xml具有适当设置的新文件。

从我的仓库复制 Nicolas Bernaerts 的固定脚本:https ://raw.githubusercontent.com/alextomko/monitors/master/monitors并将其放在从终端运行的路径中。

$ ls -l ~/bin
# if you don't have this directory then create it - do not be logged in as root here.

$ mkdir /home/$USER/bin

$ echo $PATH
# should show /home/username/bin if the dir existed or if you had to create.

$ wget -P ~/bin https://raw.githubusercontent.com/alextomko/monitors/master/monitors
$ chmod +x ~/bin/monitors


# Log out, lock, reboot or whatever it takes to make monitor settings lost for you and run the script.
$ monitors
于 2018-11-14T17:50:25.793 回答