Tianhe Gao

linux-arch-install-simsun-font

[Font Configuration/Chinese - ArchWiki](https://wiki.archlinux.org/title/Font_Configuration/Chinese)

  1. 安装字体包

```bash pacman -S ttf-roboto noto-fonts noto-fonts-cjk adobe-source-han-sans-cn-fonts adobe-source-han-serif-cn-fonts ttf-dejavu ```

  1. 修改配置文件

`/etc/fonts/local.conf` 或 `~/.config/fontconfig/fonts.conf`

```conf

<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig> <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0"> <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]" /> </its:rules>

<description>Android Font Config</description>

<!– Font directory list –>

<dir>/usr/share/fonts</dir> <dir>/usr/local/share/fonts</dir> <dir prefix="xdg">fonts</dir> <!– the following element will be removed in the future –> <dir>~/.fonts</dir>

<!– Disable embedded bitmap fonts –> <match target="font"> <edit name="embeddedbitmap" mode="assign"> <bool>false</bool> </edit> </match>

<!– English uses Roboto and Noto Serif by default, terminals use DejaVu Sans Mono. –> <match> <test qual="any" name="family"> <string>serif</string> </test> <edit name="family" mode="prepend" binding="strong"> <string>Noto Serif</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>sans-serif</string> </test> <edit name="family" mode="prepend" binding="strong"> <string>Roboto</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>monospace</string> </test> <edit name="family" mode="prepend" binding="strong"> <string>DejaVu Sans Mono</string> </edit> </match>

<!– Chinese uses Source Han Sans and Source Han Serif by default, not Noto Sans CJK SC, since it will show Japanese Kanji in some cases. –> <match> <test name="lang" compare="contains"> <string>zh</string> </test> <test name="family"> <string>serif</string> </test> <edit name="family" mode="prepend"> <string>Source Han Serif CN</string> </edit> </match> <match> <test name="lang" compare="contains"> <string>zh</string> </test> <test name="family"> <string>sans-serif</string> </test> <edit name="family" mode="prepend"> <string>Source Han Sans CN</string> </edit> </match> <match> <test name="lang" compare="contains"> <string>zh</string> </test> <test name="family"> <string>monospace</string> </test> <edit name="family" mode="prepend"> <string>Noto Sans Mono CJK SC</string> </edit> </match>

<!– Windows & Linux Chinese fonts. –> <!– Map all the common fonts onto Source Han Sans/Serif, so that they will be used when Source Han Sans/Serif are not installed. This solves a situation where some programs asked for a font, and under the non-existance of the font, it will not use the fallback font, which caused abnormal display of Chinese characters. –> <match target="pattern"> <test qual="any" name="family"> <string>WenQuanYi Zen Hei</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Sans CN</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>WenQuanYi Micro Hei</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Sans CN</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>WenQuanYi Micro Hei Light</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Sans CN</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>Microsoft YaHei</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Sans CN</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>SimHei</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Sans CN</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>SimSun</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Serif CN</string> </edit> </match> <match target="pattern"> <test qual="any" name="family"> <string>SimSun-18030</string> </test> <edit name="family" mode="assign" binding="same"> <string>Source Han Serif CN</string> </edit> </match>

<!– Load local system customization file –> <include ignoremissing="yes">conf.d</include>

<!– Font cache directory list –>

<cachedir>/var/cache/fontconfig</cachedir> <cachedir prefix="xdg">fontconfig</cachedir> <!– the following element will be removed in the future –> <cachedir>~/.fontconfig</cachedir>

<config> <!– Rescan configurations every 30 seconds when FcFontSetList is called –> <rescan> <int>30</int> </rescan> </config> </fontconfig> ```

  1. 配置微软字体

```bash yay -S ttf-ms-win11-auto-zhcn ```

字体配置

```conf <match target="font"> <edit name="autohint"> <bool>false</bool> </edit> <edit name="hinting"> <bool>true</bool> </edit> <edit name="antialias"> <bool>true</bool> </edit> </match>

<match target="font"> <test name="weight" compare="lesseq"> <const>medium</const> </test> <test target="pattern" name="weight" compare="more"> <const>medium</const> </test> <edit name="embolden" mode="assign"> <bool>true</bool> </edit> <edit name="weight" mode="assign"> <const>bold</const> </edit> </match>

<match target="font"> <test target="pattern" name="lang" compare="contains"> <string>zh</string> <string>ja</string> <string>ko</string> </test> <edit name="spacing"> <const>proportional</const> </edit> <edit name="globaladvance"> <bool>false</bool> </edit> </match>

<match target="pattern"> <test name="family"> <string>SimSun</string> <string>SimSun-18030</string> <string>AR PL ShanHeiSun Uni</string> <string>AR PL New Sung</string> <string>MingLiU</string> <string>PMingLiU</string> </test> <edit binding="strong" mode="prepend" name="family"> <string>Tahoma</string> <string>Arial</string> <string>Verdana</string> <string>DejaVu Sans</string> <string>Bitstream Vera Sans</string> </edit> </match>

<match target="font"> <test name="family" qual="any"> <string>AR PL ShanHeiSun Uni</string> <string>AR PL New Sung</string> <string>SimSun</string> <string>NSimSun</string> <string>MingLiu</string> <string>PMingLiu</string> </test> <test name="pixelsize" compare="lesseq"> <double>12</double> </test> <edit name="pixelsize" mode="assign"> <double>12</double> </edit> </match>

<match target="font"> <test compare="eq" name="family" qual="any"> <string>宋体</string> <string>新宋体</string> <string>SimSun</string> <string>NSimSun</string> <string>宋体-18030</string> <string>新宋体-18030</string> <string>SimSun-18030</string> <string>NSimSun-18030</string> <string>AR PL ShanHeiSun Uni</string> <string>AR PL New Sung</string> <string>MingLiU</string> <string>PMingLiU</string> </test> <test compare="lesseq" name="pixelsize"> <double>16</double> </test> <edit mode="assign" name="hinting"> <bool>true</bool> </edit> <edit mode="assign" name="autohint"> <bool>false</bool> </edit> <edit name="antialias"> <bool>false</bool> </edit> <edit mode="assign" name="hintstyle"> <const>hintslight</const> </edit> </match>

<match target="font"> <test name="family"> <string>Andale Mono</string> <string>Arial</string> <string>Comic Sans MS</string> <string>Georgia</string> <string>Impact</string> <string>Trebuchet MS</string> <string>Verdana</string> <string>Courier New</string> <string>Times New Roman</string> <string>Tahoma</string> <string>Webdings</string> <string>Albany AMT</string> <string>Thorndale AMT</string> <string>Cumberland AMT</string> <string>Andale Sans</string> <string>Andy MT</string> <string>Bell MT</string> <string>Monotype Sorts</string> </test> <test name="pixelsize" compare="lesseq"> <double>16</double> </test> <edit name="autohint"> <bool>false</bool> </edit> <edit name="antialias"> <bool>false</bool> </edit> </match>

<alias> <family>serif</family> <prefer> <family>Times New Roman</family> <family>Thorndale AMT</family> <family>Nimbus Roman No9 L</family> <family>DejaVu Serif</family> <family>Bitstream Vera Serif</family> <family>Luxi Serif</family> <family>Likhan</family> <family>FreeSerif</family> <family>Times</family> <family>SimSun</family> <family>SimSun-18030</family> <family>MingLiU</family> <family>WenQuanYi Bitmap Song</family> <family>AR PL ShanHeiSun Uni</family> <family>AR PL New Sung</family> <family>FZSongTi</family> <family>FZMingTiB</family> <family>AR PL SungtiL GB</family> <family>AR PL Mingti2L Big5</family> <family>Kochi Mincho</family> <family>UnBatang</family> <family>Baekmuk Batang</family> <family>HanyiSong</family> <family>ZYSong18030</family> </prefer> </alias> <alias> <family>sans-serif</family> <prefer> <family>Arial</family> <family>Albany AMT</family> <family>Nimbus Sans L</family> <family>Verdana</family> <family>DejaVu Sans</family> <family>Bitstream Vera Sans</family> <family>Luxi Sans</family> <family>FreeSans</family> <family>Helvetica</family> <family>SimSun</family> <family>SimSun-18030</family> <family>MingLiU</family> <family>WenQuanYi Bitmap Song</family> <family>AR PL ShanHeiSun Uni</family> <family>AR PL New Sung</family> <family>FZSongTi</family> <family>FZMingTiB</family> <family>AR PL SungtiL GB</family> <family>AR PL Mingti2L Big5</family> <family>Kochi Gothic</family> <family>UnDotum</family> <family>Baekmuk Gulim</family> <family>Baekmuk Dotum</family> </prefer> </alias> <alias> <family>monospace</family> <prefer> <family>Courier New</family> <family>Cumberland AMT</family> <family>Nimbus Mono L</family> <family>Andale Mono</family> <family>DejaVu Sans Mono</family> <family>Bitstream Vera Sans Mono</family> <family>Luxi Mono</family> <family>FreeMono</family> <family>NSimSun</family> <family>NSimSun-18030</family> <family>PMingLiU</family> <family>WenQuanYi Bitmap Song</family> <family>AR PL ShanHeiSun Uni</family> <family>AR PL New Sung</family> <family>FZSongTi</family> <family>FZMingTiB</family> <family>AR PL SungtiL GB</family> <family>AR PL Mingti2L Big5</family> <family>Kochi Gothic</family> <family>UnDotum</family> <family>Baekmuk Gulim</family> <family>Baekmuk Dotum</family> <family>HanyiSong</family> <family>ZYSong18030</family> </prefer> </alias> ```


No notes link to this note