📝

Ubuntu 22.04 のシステムフォントを変更する

2022/08/12に公開

日本語フォントが基本 DroidSansFallback になっているために、特定の漢字が中華フォント化するので、日本語を優先的に使うようにする。

フォントシステム自体は昔(いつ?)から変更はほぼないみたい。変更あったらちょっとつらい。

対処

今回は IPA フォントを使い、それは予め apt でインストールしているとする。

  1. /etc/fonts/local.conf に下記の xml を入れる。

ちょっとずらしてて、 sansserif は明朝体、 sans-serif はゴシック体という状態にしている。

font.dtd はおそらく chromium プロジェクトにある fontconfig -- chromium.googlesource.com を参考にした。

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <match target="pattern">
        <test qual="all" name="family">
            <string>sans</string>
        </test>
        <edit name="family" mode="assign">
            <string>IPAPMincho</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="all" name="family">
            <string>serif</string>
        </test>
        <edit name="family" mode="assign">
            <string>IPAPMincho</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family">
            <string>sans-serif</string>
        </test>
        <edit name="family" mode="assign">
            <string>JPAGothic</string>
        </edit>
    </match>
    <match target="pattern">
        <test qual="any" name="family">
            <string>mono</string>
        </test>
        <edit name="family" mode="assign">
            <string>JPAGothic</string>
        </edit>
    </match>
</fontconfig>
  1. fc-cache -f で再構築させる

確認方法

変更前
/etc/fonts# fc-match :lang=ja
DroidSansFallbackFull.ttf: "Droid Sans Fallback" "Regular"
変更後
/etc/fonts# fc-match :lang=ja                                                                                                               
fonts-japanese-gothic.ttf: "IPAGothic" "Regular"

参考

Discussion