deepin-wine-wechat-arch
deepin-wine-wechat-arch copied to clipboard
字体发虚 / 字体渲染的 Gamma 不正确
操作系统: Manjaro KDE 与系统具体版本无关,从最初开始用(约2年前)就一直存在。
问题描述: 请各位耐心阅读。
前提:
个人偏好在高 PPI 屏幕下不使用次像素锯齿,只使用灰度抗锯齿,因此在系统中全局 (/etc/fonts/fonts.conf
) 应用了 rgba = none 的规则。
<match target="font">
<edit name="rgba">
<const>none</const>
</edit>
</match>
在第一次安装 deepin-wine-wechat 时,如果系统已经按以上设置则会有下述问题。如果第一次安装时未做以上配置的,不会出现下述问题(微信中将使用次像素渲染且不再受系统配置影响)。 安装后无论如何重装 deepin-wine-wechat 都不再改变结果。
问题现象: 使用的字体并没有错误,是字体渲染的问题。在白底黑字时,字体太细(被背景侵蚀),反过来在黑底白字下,字体太粗(向背景膨胀)。至少外观上看起来像字体渲染时所用的 Gamma 值不正确的样子。
期望得到的效果:
- 按照 Linux 系统的字体设置(fontconfig 配置链)并使用正确的 gamma 值进行渲染 或
- 单独在微信中使用次像素渲染
做过的尝试: 已做过以下尝试,暂无一可解决问题。
- 修改
files.7z
里的user.reg
,修改里面的"FontSmoothingGamma"
为 0x578 (1400),"FootSmoothingType"
为 0x2 (2, 使用次像素渲染)。每次启动后,~.deepinwine/Deepin-Wechat
中的user.reg
确实是我修改后的内容,但没有效果。 - 直接修改注册表。如运行
/opt/apps/com.qq.weixin.deepin/files/run.sh regedit
后修改 1 中的两个键。修改可持久化,但没有效果。
3. 在运行微信时,前置环境变量 FONTCONFIG_FILE
并指定 fontconfig 配置文件,在该配置文件中,设置 rgba 为 rgb(使用次像素渲染)。从微信环境中触发打开系统中的浏览器,可确认该配置正确,但对 deepin-wine 仍然无效果。
截图: 麻烦,暂无。但如果大家不明白我在说什么,后续将附上截图。
希望得到的信息: 如果有人能提示一下 Deepin Wine 或该微信环境启动过程中,所使用的与字体配置有关的配置文件,以及从系统到 wine 环境它们被使用的顺序,或许将对我很有帮助。