使用中文为默认语言时,CJK字体应为默认中文字形,因此不存在CJK字体的默认字形问题。默认语言非中文时,会出现CJK字体默认字形的问题。可以执行fc-match -s | grep 'Noto Sans CJK'检查:
返回NotoSansCJK-Regular.ttc: "Noto Sans CJK JP" "Regular" 则代表默认字形为日文;
返回NotoSansCJK-Regular.ttc: "Noto Sans CJK SC" "Regular" 则代表默认字形为简体中文。
本方案仅为当前用户修改配置文件,以解决CJK字体默认为日文字形的问题。
新建~/.config/fontconfig/conf.d文件夹,在文件夹内新建64-language-selector-prefer.conf文件,并在~/.config/fontconfig/conf.d/64-language-selector-prefer.conf添加如下内容,相上关代码如下。
1
2
|
mkdir -p ~/.config/fontconfig/conf.d
vi ~/.config/fontconfig/conf.d/64-language-selector-prefer.conf
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Sans CJK SC</family>
<family>Noto Sans CJK TC</family>
<family>Noto Sans CJK JP</family>
<family>Noto Sans CJK KR</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
<family>Noto Serif CJK SC</family>
<family>Noto Serif CJK TC</family>
<family>Noto Serif CJK JP</family>
<family>Noto Serif CJK KR</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>Noto Sans Mono CJK SC</family>
<family>Noto Sans Mono CJK TC</family>
<family>Noto Sans Mono CJK JP</family>
<family>Noto Sans Mono CJK KR</family>
</prefer>
</alias>
</fontconfig>
|
执行fc-cache -fv更新字体缓存,然后执行fc-match -s | grep 'Noto Sans CJK',返回NotoSansCJK-Regular.ttc: "Noto Sans CJK SC" "Regular" 则表示设置成功。
参考:
修正简体中文显示为异体(日文)字形