noto cjk 应该用 region specific 字体

google-noto-sans-cjk-fonts 在 revision 5 的时候 Source0 改成了 language specific 字体(04_NotoSansCJK-OTF.zip)。
有些软件里,比如 GIMP 的文字工具,用 language specific 字体的话,就算选了 Noto Sans CJK SC 仍然显示日文字形。必须用 region specific 字体(05_NotoSansCJK-SubsetOTF.zip)里提供的不带日文字形的 Noto Sans SC。
google-noto-serif-cjk-fonts 也是一样。

可以考虑在 Bugzilla 上报告这个 Bug

试一下用 adobe-sourcehan* 字体包。

@vlcn 在 zh_CN.UTF-8 locale 下无法复现。能否贴出截屏?

我贴这段代码分别是 Noto Sans CJK SC, Noto Sans CJK HK, Noto Sans CJK TC, sans-serif 显示 “骨” 字。在我的 locale 下都是简体中文的骨。在 en_US.UTF-8 locale 下,第三个骨字会是繁体字形。

gimp 下面,无论用 en_US.UTF-8 还是 zh_CN.UTF-8 的 locale, 无论是 CJK SC 还是 CJK TC 都会用简体中文的骨。

或许可以自己设置一下 fontconfig 来缓解,可以参看 archwiki,自写一个配置丢 /etc/fonts 下,例如我是自己写了个 local.conf

match 的方式自己指定顺序,拿我的 serif 字体举例,我用 Source Han 那套字体,就可以这样做,优先使用 CN, 也就是简体字字形,Noto Sans 类似的做法应该也是可行的

<!-- serif -->
<match target="pattern">
  <test name="family">
    <string>serif</string>
  </test>
  <edit name="family" mode="prepend" binding="strong">
    <string>Source Han Serif CN</string>
    <string>Source Han Serif HK</string>
    <string>Source Han Serif TW</string>
    <string>Source Han Serif JP</string>
    <string>Source Han Serif KR</string>
  </edit>
</match>

在 libreoffice write 里的效果如下

image

可以看到每种字形还是基本分开了

嘛,这是我个人的看法,具体有没有效果还是要看实际情况

@kandscode 对 noto cjk 的处理 openSUSE 的默认就是这个 :joy: