技术解析

高清屏幕下 Ubuntu 的缩放比例的问题
0
2021-06-22 05:16:43
idczone

由于我的显示屏是 2K 的,在 Win10 下设置 125%效果很不错。可是 Ubuntu 系统设置里只有 200%、300%的,那样太大了( xorg 的问题?)。网上搜的各种偏方只是暂时有用(效果堪忧)。 大家如何解决此问题的?


Ubuntu 版本?使用的桌面环境?可以换装 Unity Desktop 可以实现比较完美的分数倍率缩放,要不用 KDE 也行。
参考: https://askubuntu.com/questions/1029436/enable-fractional-scaling-for-ubuntu-18-04

没记错的话 Ubuntu 现在默认还是 xorg 吧,gnome 确实只能指定整数倍缩放。
当然绕过的办法也有,简单来说就是用 gnome 自带的缩放放大,然后再用 xrandr 缩小从而得出一个比较合适的效果。
具体可以参考 Arch Wiki 的 Hidpi 词条。
不过我不用 gnome 所以不知道上面的方法效果到底如何…不过 kde 在非整数缩放的情况下表现不错。

我的办法就是修改显示分辨率

装个 gnome-tweak-tool,里面可以填 scaling factor

首先必须指出,这和你显示器分辨率没有关系,这和且只和你显示器的像素密度有关系。就算是 4K 的屏幕只有 96dpi 照样不用缩放啊,如果分辨率很低但是像素密度很高的屏幕则还是需要缩放。不要被“高分屏”这一个带有迷惑性的词语误导,当我们说“高分屏”,实际上应该指像素密度较高而不是分辨率较高。
通常来讲,如果你不需要 200%,那么你只需要配置字体缩放。
如果你正在运行 gnome,你可以执行此命令设置字体缩放:
gsettings set org.gnome.desktop.interface text-scaling-factor 1.2
如果你正在运行自定义桌面,你可能需要为此做很多脏的事情,你需要配置 xft.dpi 设置、gdk/unscaleddpi 设置,并且可能需要编辑一些配置文件。这是为了能让不同的工具包和应用程序正确工作。
为什么这样工作?
因为这是 GTK+ 等图形工具包的天生优势,在 GTK+ 里,非常不鼓励使用绝对坐标定位 widget 也没有什么应用程序用它,widget 显示的坐标由工具包根据布局信息透明的处理,应用程序开发者不关心这些,甚至应用程序开发者都不能为一个 widget 设置大小(他只能礼貌地给出请求,而无法强迫工具包这么做),因此基于这种假定,我们只需要简单设置字体缩放就能让几乎所有现代图形应用程序正常工作。这和糟糕的 win32 形成鲜明的对比,在 win32 里,widget 采用绝对布局,想象一下,应用程序开发者在 96dpi 下为一个按钮设置固定的位置、高度和宽度,如果缩放字体,那么字很可能被截断,这就是为什么 windows 一直不能很好的解决高分屏问题,(用户根本不能通过缩放字体来适配 hidpi,甚至缩放字体这个功能在 vista 中默认不使用,在 win8 上被彻底移除)因为这一切都需要让开发人员自己花费大量精力去调整,如果开发者不去专门适配,windows 就会像拉大一张位图一样强行拉大窗口,于是人们看到了很多糊的惨不忍睹的窗口,很多微软自家的软件(甚至包含在 windows 系统本身中的一些软件)都没有进行适配,微软试图在 win8 上用 windows rt 应用程序(现在是 uwp 应用程序)解决高分屏问题,但是 uwp 得不到人们足够的关注。
如果你真的想要具体的缩放,好吧,真拿你没办法,你可以设置 200%的缩放级别,然后通过 xrandr 缩小,但是这显得肮脏和多余,缩放字体工作的非常棒

unity 可以 125%

我一般都直接调整字体的字号

unity 可以,gnome 不行

只调字体大小不调整体不就行了

果然 linux 桌面好麻烦,这不是个 sb 操作吗。fedora 上 看到 放大比例 只能选 200% 的时候我傻眼了

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服