Ubuntu 18.04 LTS 上的高 DPi 屏幕 xrandr 缩放

Ubuntu 18.04 LTS 上的高 DPi 屏幕 xrandr 缩放

我刚刚在我的 Thinkpad X1 Yoga 第二代上安装了 Ubuntu 18.04 LTS 和 Windows 10 双启动,它有一个高 dpi 屏幕(2560x1440)。由于 GUI 设置不允许分数缩放(100% 太小,而 200% 又太小),太大)我按照页。

但是,从终端运行以下命令

xrandr --output eDP-1 --scale 1.3x1.3 --panning 2560x1440

我得到了一个漂亮的糟糕的结果桌面调整大小后,出现黑色边框。此外,我可以将窗口拖到黑色边框中,但它们会留下痕迹(图片这里)。

我认为这可能是 xrandr 和 Gnome 桌面环境之间的冲突,但这只是猜测。有什么关于如何解决此错误的建议吗?

答案1

我也遇到过这个问题。对我有用的方法是分别运行命令的两个部分:

xrandr --output eDP-1 --scale 1.25x1.25
xrandr --output eDP-1 --panning 2560x1440

然后我就看不到黑色边框了。不过,这在启动脚本中不起作用——每次登录时我都必须运行它。

但是,在我暂停并恢复后,黑色边框又出现了。如果有人能提供解决该问题的技巧,我将不胜感激。

答案2

这既回答了 OP 的问题,也回答了另一个答案的附加问题。

使用以下方式创建脚本:

sudo -H gedit /lib/systemd/system-sleep/scale

将这些行复制到gedit

#!/bin/bash

# NAME: scale
# PATH: /lib/systemd/system-sleep
# DESC: Reset Ethernet card after suspend, not working automatically
# DATE: Dec 8, 2018


MYNAME=$0

set_scale() {
   xrandr --output eDP-1 --scale 1.3x1.3
   xrandr --output eDP-1 --panning 2560x1440
}

/usr/bin/logger $MYNAME 'case=[' ${1}' ]'
case "${1}/${2}" in
   hibernate|suspend|pre*)
      ;;
   resume|thaw|post*)
      # sleep 2;
      set_scale;;
esac

保存脚本并退出gedit

使用以下方法将脚本标记为可执行:

chmod a+x /lib/systemd/system-sleep/scale

每次从暂停状态恢复时,该脚本都会运行。

您还可以让它在您的启动应用程序通过添加包含以下命令的条目:

/lib/systemd/system-sleep/scale post suspend

启动应用程序运行你登录。

相关内容