

HiDPI 配置记录
source link: https://blog.lilydjwg.me/2020/11/21/hidpi-configuration.215594.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

HiDPI 配置记录
本文来自依云's Blog,转载请注明。
首先,我是用 X11 窗口系统的,不同屏幕分别设置肯定没戏。所以只好让笔记本电脑的屏幕迁就一下我的4K主屏啦,把笔记本屏幕缩放一下。算一下 scale 值:192 / 120 = 1.6。不是整数,会糊,可总比放大两倍的巨大界面要好。
xrandr --output eDP-1 --scale 1.6 --auto --output DP-2 --auto --pos 3072x0 --primary --fb 6912x2160
这里要注意的是,要指定--pos
(或者--panning
),不然会重叠;要指定--fb
,不然鼠标可能会有部分区域去不了。
然后开始设置。本来我是尝试了一下 KDE 的,但因为我将在下一篇文章中写的原因而放弃,回到了 Awesome。不过也不是全无收获。我把 KDE 的配置方案拿过来用了。你想问怎么拿的?我 btrfs 的文件系统,做好快照再 rsync -n 对比一下它动了哪些文件就有了。
首先是 X11 的资源。在~/.Xresources
里写上Xft.dpi: 192
,然后xrdb -merge ~/.Xresources
一下就好了。顺便再xrandr --dpi 192
一下,听说有些程序会读这个。
然后是 GTK。GTK 2 就放弃吧,没办法。文字会按设置的 Xft.dpi 放大,图标啥的不会。GTk 3,要设置两个环境变量:
export
GDK_SCALE=2 GDK_DPI_SCALE=0.5
前一个是把界面放大,后一个是把文字缩回去,因为文字已经按 Xft.dpi 放大过,不能再放大一次了。
再然后是 Qt。Qt4 早卸载干净了不用管。Qt5 嘛,也不用管。它自己会处理好。有个按不同屏幕缩放的环境变量QT_SCREEN_SCALE_FACTORS
,效果跟 Windows 10 差不多的。但是我为了照顾其它程序已经把屏幕给 scale 过了,就不需要设置这个了。你要设置个QT_AUTO_SCREEN_SCALE_FACTOR=0
也行,但这个是默认行为。
最后是个别的程序。
Telegram 直接在设置里关掉「默认界面缩放比例」并且设置缩放比例为 300% 就好了。我也不知道为什么,Telegram 默认的字总是很小。之前 120dpi 的时候我要 200% 缩放,现在 192dpi 需要 300% 缩放了。
YouTube,就是那个网站啦。它其实没什么显示上的问题,只是死活不会给我自动选择 1080p 以上的分辨率。经过仔细二分测试之后发现,把火狐的配置文件夹下的storage/default/https+++www.youtube.com
目录删掉之后就好了。没发现删掉这个会有其它影响。
mpv 要修改配置文件,加上no-hidpi-window-scale
参数,不然会把视频自动放大,4K视频一打开会只能看到四分之一的画面。加上这个参数,默认窗口大小时,一个视频里的像素会对应一个显示器上的像素,不大不小刚刚好。mpv 文档上说这是 OS X 系统上的默认行为,可我这是 Linux 桌面啊,你把别的平台上的习惯搬过来是几个意思?另外我加了个demuxer-readahead-secs = 20
选项。我的大文件都在机械硬盘上,4K 码率又比较高,不多预读一点容易卡。
我的 qemu 之前使用的是-display gtk
,也坏掉了。窗口那么大,虚拟机只用左下角那里四分之一的空间。spicy 也有问题,会告诉虚拟机只有 1080p。解决方法是 unset GDK_SCALE GDK_DPI_SCALE。它们在放大了自己的界面的同时,把显示的虚拟机的内容也给放大了,所以干脆叫它们别动。也没什么别的影响。
哦还有 Zoom。设置个QT_AUTO_SCREEN_SCALE_FACTOR=1
似乎就好了?我试了一下QT_SCREEN_SCALE_FACTORS
,会导致很怪异的行为。
以上解决了显示大小的问题,但我发现还有个问题:我的鼠标光标时大时小的……从 KDE 那边弄来几个设置之后就好了,而且主题也更加一致了呢。
首先是设置 xcursor 环境变量:
export
XCURSOR_THEME=Vanilla-DMZ XCURSOR_SIZE=36
听说对应的 X 资源大家都不理睬,那我也就不设好了。
然后是 GTK 2 的~/.gtkrc-2.0
文件里写上:
gtk-cursor-theme-name = "Vanilla-DMZ"
gtk-cursor-theme-size = 36
再接下来是 GTK 3 的~/.config/gtk-3.0/settings.ini
:
[Settings]
gtk-cursor-theme-name = Vanilla-DMZ
gtk-cursor-theme-size = 36
然后又没了。天知道为什么 Qt 那边啥都不干就好好的,GTK 却这么麻烦。
啊,你问这些环境变量在哪里设?我给写~/.xprofile
里了。不过这还不够。有些 GUI 程序会由用户的 systemd启动(比如我的 Telegram 是由 systemd 启动的,为了在内存用得太多的时候自动重启),有些 GUI 程序会由 D-Bus 激活(比如 gnome-terminal)。这些是和登录会话分开的,所以要手动导入一下。以下是我的 .xprofile 中导入图形界面相关环境变量的部分:
_envs=(
GDK_SCALE GDK_DPI_SCALE
XCURSOR_THEME XCURSOR_SIZE
XMODIFIERS QT_IM_MODULE GTK_IM_MODULE
LIBVA_DRIVER_NAME GST_VAAPI_ALL_DRIVERS
)
dbus-update-activation-environment
"${_envs[@]}"
systemctl --user
import
-environment
"${_envs[@]}"
至于登录界面怎么办,我是在 lightdm 的 display-setup-script 里,跑了跑 xrandr,设置了一下 Xft.dpi 资源。环境变量啥的没动,反正用不上。当然你也可以去改~lightdm/.pam_environment
来设环境变量,反正现在 Arch Linux 还是读它的。别的 dm 同理。
Recommend
-
15
HiDPI support in Chromium for Wayland It all started with this bug. The description sounded humble and harmless: the browser ignored some command line flag on Wayland. A screenshot...
-
13
HiDPI Scaling for Electron-based Snap apps like Spotify By Dan Nemec 20 Mar 2021
-
6
For Linux Cinnamon GUIPermalink Here is the steps: Install dconf-editor if...
-
14
SOLVED by 1440p HiDPI: MacBook Pro 16" is HOT & NOISY with an external monitor!The MacBook Pro 16" has a problem.If you connect certain GPU models (specifically the 5300M/5500M) to external monitors wi...
-
22
关于 IDA Pro 在 HiDPI 屏幕上的使用 博主: ryank231231 发布时间:2021 年 07 月 01 日...
-
42
在非 4K 的螢幕上跑 HiDPI 前幾天看到 BetterDummy 這個專案,作者在 M1 上面外接 24" 1440p 的螢幕,但沒辦法啟用 HiDPI,於是就寫了一個軟體來解: M1 macs tend...
-
23
Wayfire 迁移进展(二):Xwayland HiDPI 以及 waybar 本文来自依云's Blog,转载...
-
8
为 Mac OS 10.15 开启 HiDPI,让 2K 显示器更舒适2019.11.24以前手抖买了台 Dell P2416D 显示器,接上 Macbook 发现原生的分辨率设置在 2K 显示器上字体很小,换成 1080P 分辨率显示...
-
4
TechBlogHow to fix (80%) HiDPI issues in Gulliam OS 3.1April 12, 20201 Comment ...
-
8
137924 – [KF5] UI not scaled correctly on HIDPI Wayland/KDE screens Bugzilla – Bug 137924 [KF5] UI not scaled correctly on HIDPI Wayland/KDE screens Last modified: 202...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK