我有 Ubuntu 18.04 LTS,带有标准 Gnome 和两个显示器,UHD 和 HD。左侧显示器是主显示器,需要缩放其桌面 - 1.25 倍就很完美了。我无法使用 GUI 来实现这一点,因为唯一的选项是 100%、200% 等。我尝试运行,xrandr
但出现了不少问题。
这是进行xrandr --current
任何更改之前的输出:
HDMI-0 connected 1920x1080+3840+0 (normal left inverted right x axis y axis) 598mm x 336mm
1920x1080 60.00*+ 59.94 50.00
...
HDMI-1 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 697mm x 392mm
3840x2160 60.00*+ 59.94 50.00 30.00 29.97 25.00 23.98
2560x1440 59.95
1920x1080 60.00 59.94 50.00 29.97 23.98
...
xrandr --output HDMI-1 --scale 0.8x0.8
可以按预期缩放主屏幕,但桌面之间似乎有“间隙”,当我将鼠标从一个屏幕移动到另一个屏幕时,指针会消失。我的理想配置是主显示器和辅助显示器在底部对齐。
当我运行以下命令时:
xrandr --output HDMI-1 --mode 3840x2160 --scale 0.8x0.8 --pos 3072x0 --output HDMI-0 --mode 1920x1080 --scale 1x1 --pos 0x0
屏幕更糟糕,完全拧坏了,彼此分离,并且对齐错误。这是输出xrandr --current
:
HDMI-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm
1920x1080 60.00*+ 59.94 50.00
...
HDMI-1 connected primary 3072x1728+3840+0 (normal left inverted right x axis y axis) 697mm x 392mm
3840x2160 60.00*+ 59.94 50.00 30.00 29.97 25.00 23.98
2560x1440 59.95
1920x1080 60.00 59.94 50.00 29.97 23.98
...
我认为我不明白这些参数。
有人能帮忙吗?
编辑1
我浏览了“Ask Ubuntu”和“Archlinux”等网站。我学到了一些东西,但找不到问题的答案。我设法运行了以下命令:
xrandr --output HDMI-1 --fb 4992x1728 --mode 3840x2160 --scale 0.8x0.8 --pos 0x0 --primary \
--output HDMI-0 --mode 1920x1080 --scale 1x1 --pos 3072x0`
并按照我的需要配置监视器。
棘手的是--scale 0.8x0.8
。我阅读了手册xrandr
,还意识到还有其他事情需要考虑:
- 我所指的“屏幕”是手册中使用的名称
xrandr
,是一个大桌面,而显示器是我们围绕它配置的视口。 --scale XxY
缩放或缩小设备上的桌面。当发生这种情况时,有效分辨率会随着桌面可见部分的变大或变小而变化(见图);重要的是,在定义其他参数时,我必须使用这个新维度,例如--fb XxY
或--pos
--fb XxY
是定义帧缓冲区的最大尺寸。计算此参数的数字时,应考虑所有比例。毕竟,尺寸加起来应为 X 和 Y 的最大值。在我的例子中,两个相邻的显示器加起来为 4992x1728。--pos XxY
在帧缓冲区内定位监视器。主监视器的位置为 0x0,而辅助监视器的位置为 3072,即缩放后的第一个监视器的尺寸。如果我使用原始的 3840,则在监视器之间移动时指针会消失,因为会有间隙(参见下面的屏幕截图)。顺便说一句,如果使用尺寸 3840,X
也--fb XxY
需要将其更改为 5760。
下图中,主显示器上的部分桌面由于缩放而被隐藏。在 GUI 设置中,两个显示器重叠,但这些设置使一切按我预期的方式运行。
为了进行最后的测试并检查一切是否正常,我制作了一个屏幕截图,看起来显示器粘得很好。
带有错误参数的屏幕截图--fb XxY
:
编辑2。
重要的. 之前提供的命令:
xrandr --output HDMI-1 --fb 4992x1728 --mode 3840x2160 --scale 0.8x0.8 --pos 0x0 --primary \
--output HDMI-0 --mode 1920x1080 --scale 1x1 --pos 3072x0`
仅当我注销然后登录,然后在终端中手动输入时才有效。如果我尝试将命令添加到.xprofile
,结果会大不相同。有时,主显示器根本没有缩放,或者出现一些奇怪的行为,例如当指针移动到屏幕边缘时屏幕会流动。如果发生这种情况,然后我尝试再次运行相同的命令而不重新启动配置文件,情况会变得非常奇怪。我只需重新启动/重新登录并手动运行此命令即可。
任何设法到达这一点的人 :),谢谢。也许有人知道如何解决与命令相关的最后一个问题,这意味着每次我登录帐户时都可以执行该命令。
谢谢。