优化 Qt 在 Windows 高分屏上的字体渲染

在 Windows 系统的高分辨率屏幕上,基于 Qt 的程序显示时,文字边缘会出现不规则的锯齿。

解决方法

启用 FreeType 字体渲染引擎可以显著改善这一问题。

在程序的根目录下创建qt.conf文件,并写入以下内容:

1
2
[Platforms]
WindowsArguments = fontengine=freetype

注:Telegram Desktop 可以通过 Settings > Advanced > Experimental settings > FreeType font engine 来开启。

qBittorrent 在启用前后的对比:

启用前/启用后

修复 Windows 11 下 Chrome 渲染错误

在 Windows 11 下使用 Chrome 浏览器,有时会出现以下问题:

  1. 页面 1/3 左右的区域卡住,其余部分仍然可以滚动。
  2. 切换页面时,上一个页面的部分内容残留在页面上。
  3. 白色背景下光标变成白色,和背景融为一体。

系统信息

处理器:AMD Ryzen 5 4600U
显卡:Radeon RX Vega 6 集成显卡
操作系统:Windows 11 专业版 24H2
Chrome:版本 141.0.7390.55

解决方法

禁用 MPO (Multi-Plane Overlay)

使用注册表编辑器,定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Dwm,创建一个DWORDOverlayTestMode,数值为00000005

或者把以下内容写入文本文件,后缀改为reg后双击执行。

1
2
3
4
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Dwm]
"OverlayTestMode"=dword:00000005

也可以下载这个由 NVIDIA 提供的注册表文件 mpo_disable.reg,内容和上面一样。

重启 Windows 后问题不再出现。