是否可以使用超宽显示器(带有 Nvidia 驱动程序)以宽屏分辨率使用未使用的屏幕部分?

是否可以使用超宽显示器(带有 Nvidia 驱动程序)以宽屏分辨率使用未使用的屏幕部分?

我希望能够时不时地将超宽显示器用作普通宽屏显示器;我的桌面不是采用 3440x1440 的原始分辨率,而是采用 2560x1440 的分辨率,使用显示器中央的 2560 列并忽略其余部分:

所需设置

我正在使用 NVidia 视频驱动程序和 i3 窗口管理器。

我尝试使用 xrandr 来实现这一点。我发现了一些有希望的帖子,例如这个这似乎是这样做的秘诀。但如果我尝试:

xrandr --fb 2560x1440 --output DP-0 --panning 2560x1440 --mode 2560x1440

则显示器显示为 2560x1440 模式,桌面拉伸至整个显示器。

如果我尝试按照建议添加模式:

$ cvt 2560 1440 60                                                                                                                                                                                  
# 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHz
Modeline "2560x1440_60.00"  312.25  2560 2752 3024 3488  1440 1443 1448 1493 -hsync +vsync
$ xrandr --newmode WEIRD2 312.25  2560 2752 3024 3488  1440 1443 1448 1493 -hsync +vsync
$ xrandr --addmode DP-0 WEIRD
X Error of failed request:  BadMatch (invalid parameter attributes)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  18 (RRAddOutputMode)
  Serial number of failed request:  41
  Current serial number in output stream:  42

我相信这个(无法添加模式并将其分配给显示器 - BadMatch)是关于 NVidia 驱动程序的问题,并且我找不到解决方法。

我使用该nvidia-settings应用程序进行了更近距离的观察。它具有欠扫描模式。我使用了以下设置:

Nvidia 设置

这非常接近;我看到显示器中间有一个 2560x1440 的区域,并且没有明显的平移,但 X 会话似乎仍然看到更宽的桌面,它在右侧被截断。

nvidia-settings 的结果

我可以使用 Xrandr 来修复此桌面大小吗?如果我尝试xrandr --fb 2560x1440,我会得到xrandr: specified screen 2560x1440 not large enough for output DP-0 (3440x1440+0+0)

最后,作为一种解决方法,我可以使用 i3-gaps 并将水平间隙设置为 440 像素。但是,任何窗口的全屏模式都会使用整个显示器,这仍然不理想。

这是输出xrandr

这是输出xrandr -v

还有输出nvidia-settings -q all

我正在尝试做的事情是否可行,包括能够随意来回切换?

编辑添加

输出hwinfo --monitor --gfxcard

输出sudo lshw -C display

输出自cvt 2560 1440

# 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHz Modeline "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync

输出自gtf 2560 1440 60

# 2560x1440 @ 60.00 Hz (GTF) hsync: 89.40 kHz; pclk: 311.83 MHz Modeline "2560x1440_60.00" 311.83 2560 2744 3024 3488 1440 1441 1444 1490 -HSync +Vsync

答案1

要消除错误,BadMatch您可以尝试在文件中添加/更改xorg.conf,在Section "Monitor",,或者其他设置(您当前的设置是什么?),然后重新启动(HorizSync 30-90VertRefresh 55-76来源)。

您也可以尝试删除 的最后一个参数cvt,让它为您选择。请发布输出。

您也可以尝试选项xrandr ... --set ...来源来源--scale来源

对于一些,nvidia-settings 工作,可能有所不同。

您也可以尝试与nouveau司机。这也许不是一个明确的答案,但它可能会有所帮助。

在此期间,请发布

$ hwinfo --monitor --gfxcard
$ sudo lshw -C display
$ cvt 2560 1440
$ gtf 2560 1440 60

有关的

  1. 更改为较低的屏幕分辨率而不进行拉伸
  2. 如何使用 xrandr 更改首选分辨率?

相关内容