Linux 上的双显示器:如何更改仅一个屏幕的虚拟分辨率

Linux 上的双显示器:如何更改仅一个屏幕的虚拟分辨率

我正在使用具有两个屏幕的 Centos 6.3:

screen A : 1280x1024
screen B : 1680x1050

屏幕 A 是主屏幕,屏幕 B 是扩展屏幕。问题是,屏幕 A 应该接受 1280x1050 的虚拟分辨率,而不是 1280x1024。

只有一个屏幕连接到电脑,我在终端上运行:

$ xrandr --fb 1280x1050 --output VGA1 --mode 1280x1024 --panning 1280x1050

并且它可以工作,我有了新的虚拟分辨率,并且可以访问接触屏幕边缘的屏蔽部分。

问题出在两个屏幕上。我想像以前一样,放大屏幕 A,而不改变屏幕 B 的分辨率,但命令不起作用,我不知道该怎么做。我用

$ xrandr --fb <NEW_RES_WITH_TWO_SCREENS>

但是它在两个显示器上形成了一个大的相同屏幕。我读到我应该修改 xorg.conf 文件,但似乎这个文件在 /etc/X11... 上不存在,当我想创建一个时:

$ Xorg -configure

我有一个错误..

致命服务器错误:服务器已针对显示 0 处于活动状态,如果此服务器不再运行,请删除 /tmp/.X0-lock 并重新启动

语境:我必须在屏幕 A 上运行一个应用程序,其人机界面分辨率大于屏幕分辨率。而且我无法修改代码。

欢迎任何帮助

答案1

当你想设置多个显示器时,你需要得到他们的名字分别指定其分辨率

count=0
xrandr --query | while read -r word1 word2 _
do
    if [ "${word2:-}" = 'connected' ]
    then
        IFS='xi ' read -r width height _
        printf '%s %d %d\n' "$word1" "$width" "$height"
    fi
done | while read monitor width height
do
    count=$(($count + 1))
    printf "monitor%d_name='%s'\n" "$count" "$monitor"
    printf "monitor%d_width='%s'\n" "$count" "$width"
    printf "monitor%d_height='%s'\n" "$count" "$height"
done

示例输出:

monitor1_name='LVDS1'
monitor1_width='1366'
monitor1_height='768'
monitor2_name='VGA1'
monitor2_width='1280'
monitor2_height='1024'

相关内容