问题描述:
一直将 HarmonyOS Sans 1.0 字体当作ubuntu系统默认字体。但自升级 HarmonyOS Sans 到1.9后,发现主题显示出现问题。shell主题设置为亮色(light)模式时,所有字体反色,几乎不可见,但设为暗色(dark)模式时显示正常。
相关资源:
HarmonyOS Sans 1.0在https://developer.huawei.com/consumer/c ... 7868583-V1下载。
HarmonyOS Sans 1.9在https://developer.huawei.com/consumer/c ... /resource/下载。
系统环境:
系统基本环境如下:
1.0版字体信息如下:
1.9版字体信息如下:
显示问题:
使用HarmonyOS Sans 1.0时字体shell菜单截图:
使用HarmonyOS Sans 1.9时字体shell菜单截图:
尝试与猜测
1.猜测与字体特性有关,于是关闭1.9字体版本的color和fonthashint两个属性,问题依然。
2.猜测与主题样式有关。于是更换主题,只有暗色(dark)主题显示正常,亮色(light)主题问题依然。
鸿蒙 sans 1.9 字体造成的主题显示问题,如何解决?
-
- 帖子: 400
- 注册时间: 2007-06-22 18:52
- astolia
- 论坛版主
- 帖子: 6703
- 注册时间: 2008-09-18 13:11
Re: 鸿蒙 sans 1.9 字体造成的主题显示问题,如何解决?
应该就是gtk套件或gnome shell对color font的支持不好。
用ttftable工具把COLR、CPAL和SVG三个表移除掉就正常了
用ttftable工具把COLR、CPAL和SVG三个表移除掉就正常了
-
- 帖子: 400
- 注册时间: 2007-06-22 18:52
Re: 鸿蒙 sans 1.9 字体造成的主题显示问题,如何解决?
很可惜的是网上搜索一圈没有发现font-ttf-scripts的包,不得已自行打包了一个。在bash终端如下操作。astolia 写了: ↑2024-08-03 12:25 应该就是gtk套件或gnome shell对color font的支持不好。
用ttftable工具把COLR、CPAL和SVG三个表移除掉就正常了
代码: 全选
# 安装依赖
sudo apt --yes install libfont-ttf-perl libio-string-perl libtext-pdf-perl libtext-unicode-equivalents-perl
# 下载附件中的libfont-ttf-scripts-perl_1.0.6-myubuntu_all.deb并安装。
sudo dpkg -i libfont-ttf-scripts-perl_1.0.6-myubuntu_all.deb
# 下载HarmonyOS Sans 1.9版字体并解压
wget -c https://developer.huawei.com/images/download/next/HarmonyOS-Sans.zip
unzip HarmonyOS-Sans.zip -d tmp
# 修改字体表
find 'tmp/HarmonyOS Sans ' -name '*.ttf' | while read line; do
mkdir -p HarmonyOS-Sans/$(echo "$line" | cut -d'/' -f3)
ttftable -delete COLR,CPAL,SVG "$line" \
HarmonyOS-Sans/$(echo "$line" | cut -d'/' -f3)/$(echo "$line" | cut -d'/' -f4)
done
重新安装修改后的字体,问题解决,非常感谢。以下是删除后的字体表对比:
- 附件
-
- libfont-ttf-scripts-perl_1.0.6-myubuntu_all.deb
- (203.96 KiB) 已下载 72 次