我有两台显示器:
DP-1:1920x1080(高清,辅助)
eDP-1:3840x2160(4k,主)
我的问题:
我想将我的 4k 显示器设置为 200% 缩放 @ 3840x2160,将我的高清显示器设置为 100% 缩放 @ 1920x1080
我已尝试过:
运行 i3 时,从视觉上看,默认设置是将所有内容保持在 4k @ 1x1 缩放比例。(当我检查 arandr 时,似乎高清显示器设置为 1080,但从视觉上看情况并非如此)。
在 gnome 桌面环境中,我必须使用一些技巧才能使我的两个显示器正确显示。我运行:xrandr --output eDP-1 --scale 0.999x0.999 --pos 3840x0 ; xrandr --output DP-1 --scale 1.999x1.999 --mode 1920x1080 --fb 7680x2160 --pos 0x0
在 Gnome 中,这很有效,但是当我在 i3 中运行它时,它似乎将所有内容设置为 3840x2160 @ 100% 缩放(非常非常小)。我还收到错误:
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 7 (RRSetScreenSize)
Serial number of failed request: 33
Current serial number in output stream: 34
我做了什么:
✔️我可以让高清显示器按如下方式工作:
xrandr --output DP-1 --scale 1x1 --mode 1920x1080
现在,当我调整我的主 4k 显示器时,它有以下奇怪的行为:
✔️xrandr --output eDP-1 --mode 3840x2160
调整到正确的分辨率
❌xrandr --output eDP-1 --scale 2x2
让它变得非常小
✔️xrandr --output eDP-1 --scale 0.5x0.5
使物体大小合适,但很模糊
❌xrandr --output --dpi <attempted with value 96, 192>
不起作用并且失败:
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 7 (RRSetScreenSize)
Serial number of failed request: 33
Current serial number in output stream: 35
因此,我能够让两个显示器都处于正确的分辨率,但无法在我的 4K 显示器上进行清晰的 200% 缩放。出于某种原因,我不得不在 Gnome 中进行 2x2 缩放才能使内容变大,而我必须在 i3 中进行 0.5x0.5 缩放才能使内容变大,这会使内容变得模糊。编辑:哦,是的,尽管 UI 元素是成比例的,但鼠标真的很大
答案1
几个世纪以来,我终于明白了这一点。解决方案不是应用 0.5x0.5 缩放,而是调整 DPI。我认为 DPI 调整不起作用,因为您需要刷新 i3 才能看到它们(Mod+shift+r)
我添加了以下内容~/.Xresources
:
Xft.dpi: 192
然后我运行了以下命令:
xrdb -merge .Xresources
exec i3
然后我运行了以下脚本,借用自[本文][1]:
#!/bin/bash
xrandr --dpi 192 --fb 7680x4320 \
--output eDP-1 --mode 3840x2160 \
--output DP-1 --scale 2x2 --pos 3840x0 --panning 3840x2160+3840+0
此后,缩放似乎有效![1]:https://blog.summercat.com/configuring-mixed-dpi-monitors-with-xrandr.html