我使用了artmem的解决方案,但遇到了EoghanM提到的鼠标问题。我在他链接的旧错误报告中找到了解决方法,它与--panning有关。
我正在拍摄:-原生DIP中的DP1-2 3840x2160。-eDP1 1366x768,缩放到DP1-2右侧看起来合理。
我通过有一个像DP1-2 +(2x eDP1)的帧缓冲区来实现这一点,然后将要传输到eDP1的所有内容缩放1/2。
这应该很简单,但是xrandr有点棘手。
在这里--scale用于将进入eDP1的所有内容减少1/2。--panning与原始帧缓冲区中的eDP1相同,其位置(+ 3840 + 0)在DP1-2的右侧。+ 0 + 2160将在其下方。
xrandr -d :0 --fb 6572x3696 --output DP1-2 --mode 3840x2160 --scale 1x1 --rate 60 --pos 0x0 --primary
# sometimes panning get applied incorrectly when switching from some other mode, running it twice is a work around
xrandr -d :0 --output eDP1 --off
xrandr -d :0 --fb 6572x3696 --output eDP1 --mode 1366x768 --scale 2x2 --panning 2732x1536+3840+0
xrandr -d :0 --fb 6572x3696 --output eDP1 --mode 1366x768 --scale 2x2 --panning 2732x1536+3840+0
我也将Xft.dpi设置为185
$ cat ~/.Xresources
Xft.dpi: 185
当我从外接显示器上拔下电源时,我会运行:
xrandr -d :0 --output DP1-2 --off
xrandr -d :0 --fb 2732x1536 --output eDP1 --mode 1366x768 --scale 2x2 --panning 2732x1536+0+0 --pos 0x0 --primary
看起来不太好,但是我离办公桌不太远。您可以通过更改Xft.dpi并重新启动所有桌面程序来解决此问题。我不知道一种方法来更改Xft.dpi,然后让客户端使用它而无需重新启动它们。