重启后Ubuntu 20.04界面字体太小,即使缩放因子很高

Yan*_*res 48 nvidia fonts interface restart

所以我正在我的笔记本上配置 VS 代码时,突然我注意到我的界面字体在我的桌面、终端和文件上变得非常小。

我使用 Gnome Tweaks Tool 将我的缩放因子增加到 1,15 ,但是,即使它处于活动状态,字体仍然很小。

我找到的解决方案是移动我的缩放因子,这立即解决了我的字体问题,但是,每次我重新启动笔记本时,字体再次变小,我必须重复该过程。

我尝试使用此命令重置我的字体配置,但没有成功。

gsettings reset org.gnome.desktop.interface text-scaling-factor
Run Code Online (Sandbox Code Playgroud)

我也尝试使用命令

dconf reset -f /
Run Code Online (Sandbox Code Playgroud)

最后,我尝试使用 dconf-editor,但仍然没有成功改变字体渲染 DPI 或改变缩放因子。

我提到的所有步骤都暂时修复了我的字体,但是当我重新启动笔记本时问题仍然存在

我没有想法,甚至考虑现在安装新的 Ubuntu ......

我的显卡:NVIDIA GeForce GTX 1050 GPU

ste*_*-bz 33

更新 2020-10-07

该错误现已修复,您可以使用apt并删除您选择的任何解决方法。

原答案

这是最近在 Mutter 中引入的一个错误,它是 Gnome Shell 的默认窗口管理器。
https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1892440

它似乎主要影响Nvidia卡。

它通过删除名为“x11-Add-support-for-fractional-scaling-using-Randr.patch”的补丁在 Pop!_OS 中得到修复
https://github.com/pop-os/pop/issues/1170 https: //github.com/pop-os/mutter/commit/a912c7fc25f4797047790fc5df1711eeb31af282

Ubuntu 开发人员没有说明他们将如何解决这个问题,但至少他们承认了这个问题,并且有人被指派给它。

目前唯一已知的解决方法是您所描述的:在 Gnome Tweaks 中,将缩放因子更改为其他值并恢复为原始值。不幸的是,正如您所指出的,每次登录后甚至每次重新启动 Gnome Shell (ALT+F2, r) 后都需要这样做。

  • 请记住,从 Nvidia 切换到 Nouveau 驱动程序会对您的系统产生更大的影响。例如,Nouveau 中没有 Vulkan 支持,许多 Steam 游戏会慢得多或明显无法运行。总的来说,性能和与当前显卡的兼容性仍然是一个[问题](https://www.phoronix.com/scan.php?page=article&item=nvidia-nouveau-2019&num=1)。对我来说,与每次登录时自动运行的 4 行脚本相比,不值得进行权衡,而不会对系统产生任何影响。 (3认同)
  • 此错误有[解决方法](https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1892440/comments/17):降级有缺陷的软件包 `sudo apt install libmutter-6-0=3.36 .1-3ubuntu3 gir1.2-mutter-6=3.36.1-3ubuntu3`并保留当前版本`sudo apt-mark Hold libmutter-6-0`。不要忘记订阅启动板问题,以便在修复出现时取消保留软件包。 (2认同)

Lor*_*eel 27

编辑 2020/10/07

该错误已在包中修复mutter (3.36.6-1ubuntu0.20.04.2),可通过apt.

原答案

受此答案的启发,我在我的机器中实施了一个临时解决方法。我目前使用 Ubuntu 20.04.1 和 GNOME Shell 3.36.4。

这不会修复 GDM 登录屏幕中的字体大小,但只能在登录后修复。这个技巧只是避免在每次重新启动后重复一系列烦人的命令。当然,这个技巧可能只有在 Mutter 中的错误修复后才有用。

  1. ~/.local/bin使用以下内容创建一个脚本(我把它放在 中):

    sleep 5s
    gsettings set org.gnome.desktop.interface text-scaling-factor 1.01
    sleep 0.5s
    gsettings set org.gnome.desktop.interface text-scaling-factor 1.00
    
    Run Code Online (Sandbox Code Playgroud)

    '1.01' 它只是一个触发变化的数字,它可以是任何值。我决定使用一个非常接近最后一个的值。'1.00' 是我最终想要的值。随意输入您的目标值。睡眠时间也一样,你可以改变它们。

  2. 使其可执行运行:

    chmod +x ~/.local/bin/fix-font-size.sh
    
    Run Code Online (Sandbox Code Playgroud)
  3. fix-font-size.sh在启动时运行脚本(我将其命名为)。出于这个原因,我运行启动应用程序首选项应用程序并使用以下命令创建一个新项目:

    bash -c "/home/username/.local/bin/fix-font-size.sh"
    
    Run Code Online (Sandbox Code Playgroud)

    另请参阅屏幕截图以供参考(其中“Modifica programma d'avvio”表示“启动应用程序首选项”):

    向启动应用程序添加命令

  4. 保存,登录后您应该拥有正确大小的字体,而无需在终端或 GUI 中手动插入命令。

  • 对于我们的英文读者,“modifica programma d'avvo”是 Ubuntu 内置的“启动应用程序首选项”应用程序。 (4认同)

小智 12

正如错误报告中提到的:

您可以暂时降级 libmutter 包作为解决方法:

sudo apt install libmutter-6-0=3.36.1-3ubuntu3 gir1.2-mutter-6=3.36.1-3ubuntu3
sudo apt-mark hold libmutter-6-0
Run Code Online (Sandbox Code Playgroud)

修复出来后记得松开!


Suj*_*jit 5

注意:仅适用于配备 NVIDIA 显卡的 PC。

我昨天安装了 Ubuntu 20.04 LTS 并遇到了完全相同的问题。每当我关闭并重新打开笔记本电脑盖时,墙纸都会损坏,但这是另一个问题。经过一番折腾,我想出了如何解决这个问题。您所要做的就是在软件和更新下的附加驱动程序部分将图形驱动程序从NVIDIA 二进制驱动程序更改为X.Org X 服务器(请记住单击应用更改,这将需要一段时间)。应用更改后,重新启动 PC。这样做解决了我上面提到的问题和其他错误。

在此处输入图片说明

干杯!

上述方法是永久性修复。如果你想使用NVIDIA驱动程序,我认为你将不得不等待开发人员发布补丁。


我还找到了这个临时修复程序(针对有问题的错误,而不是我上面提到的那个)。每次重新启动时都必须执行此操作。这是如果您真的想保留您的NVIDIA驱动程序。

转到设置>通用访问并启用和禁用大文本。这将向您展示 Ubuntu 的外观。

在此处输入图片说明

再次加油!!


van*_*ium 5

由于这是一个错误,正如stefg-bz在这里很好地概述的那样,我们将不得不等待一段时间直到它被修复。同时,您可以使用Lorenz Keel在此处建议的解决方法,该方法会在您登录时自动更改缩放因子并将其设置回原位。 在这里,我提供了该解决方法的实现,它不需要安装其他工具并有一个单独的脚本。

1.desktop file在您的自动启动文件夹中创建一个。

gedit ~/.config/autostart/workaround_font_scaling.desktop
Run Code Online (Sandbox Code Playgroud)

2 将以下内容粘贴到文本文件中

[Desktop Entry]
Exec=/usr/bin/sh -c "sleep 1 && gsettings reset org.gnome.desktop.interface text-scaling-factor && gsettings set org.gnome.desktop.interface text-scaling-factor 1.2" 
Name=Fontissue
StartupNotify=false
Type=Application
Run Code Online (Sandbox Code Playgroud)

Exec=根据您的需要调整线路上的内容。

  • 变化1.2org.gnome.desktop.interface text-scaling-factor 1.2你使用自己的字体缩放因子。
  • 改变1sleep 1到一个更高的值,如果设置不(总是)登录后正确应用。sleep 1gsettings命令开始之前提供 1 秒的延迟。例如,1.5将延迟 1.5 秒。

3 保存文件并关闭编辑器