2017年4月9日日曜日

Fontconfigでデフォルトのフォントを設定する方法

Fontconfigでデフォルトのフォントを設定する
Linux上のフォント管理は、Fontconfigが行っている。例えば、「デフォルトのゴシック体(サンセリフ体)は"MSゴシック"を割り当て、デフォルトの明朝体(セリフ体)には"MS明朝"を割り当て…」のような機能を担っている。さらに、フォントの割り当てだけではなく、フォントの表示のさせ方(アンチエイリアスなど)の調整などの、細かな機能も担っている。

この記事では、Fontconfigでフォントの割り当てを設定する方法を解説する。


現在のフォントの設定を確認する
よく使われるフォントファミリー(総称ファミリ名)には、「sans-serif(ゴシック体、サンセリフ体)」、「serif(明朝体、セリフ体)」、「monospace(等幅)」がある。その他、マイナーなものとして「cursive(手書き文字)」、「fantasy(装飾書体)」があるが、ほとんど使われない。

ほとんどのアプリケーションは、このsans-serif、serif、monospaceに登録されているデフォルトのフォントを呼び出して使っている。

フォントファミリーにどのフォントが、デフォルトで割り当てられているのかは、以下のように確認できる。 サンセリフ体の場合。
$ fc-match sans-serif

NotoSansCJKjp-Regular.otf: "Noto Sans CJK JP" "Regular"

サンセリフ体、太字の場合。
$ fc-match sans-serif:weight=bold

NotoSansCJKjp-Bold.otf: "Noto Sans CJK JP" "Bold"

使えるフォントの名前を確認する
使えるフォントの名前も、fc-matchで確認できる。"Source Han Serif"の箇所は、自分がインストールしたフォントのパッケージ名等を入力すれば、完全なワードでなくても、fc-matchが検索してくれる。

「源ノ明朝」がフォントの名前となる。フォントの名前は、表示させるフォントを指定する時に、必要となる。
$ fc-match "Source Han Serif"

SourceHanSerif-Regular.ttc: "源ノ明朝" "Regular"

デフォルトで表示させるフォントを設定する
Arch Linuxの場合、フォントをインストールしただけでは、デフォルトのserif体に、明朝体のフォントが正しく割り当てられていなかった。fc-matchでserifに割り当てられているフォントを確認すると、ゴシック体のNotoフォントが割り当てられていた。
$ fc-match serif

NotoSansCJKjp-Regular.otf: "Noto Sans CJK JP" "Regular"

デフォルトの"Serif"に、明朝体フォントの「源ノ明朝」を割り当てたい。割り当てるには、~/.config/fontconfig/fonts.confというファイルを作成して、このファイルに設定を記入する。まず、ディレクトリを作成する。
$ mkdir ~/.config/fontconfig

次に、ファイルを作って設定を記入する。フォントファミリ(serif)ーや、フォント名(源ノ明朝)は、設定したい内容に応じて、変えてよい。
$ vim ~/.config/fontconfig/fonts.conf

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<!-- Default serif fonts -->
 <match target="pattern">
   <test qual="any" name="family"><string>serif</string></test>
   <edit name="family" mode="prepend" binding="same"><string>源ノ明朝</string>  </edit>
 </match>
</fontconfig>

fc-cacheで設定を読み込んでから、フォントが正しく割り当てられているか確認する。
$ fc-cache
$ fc-match serif

SourceHanSerif-Regular.ttc: "源ノ明朝" "Regular"

$ fc-match serif:weight=bold

SourceHanSerif-Bold.ttc: "源ノ明朝" "Bold"

フォントの設定が反映されているか確認する
GNOEM Terminalのプロファイルの設定で、使用するフォントを選ぶ画面でフォントが設定されているか確認できる。Serifに、明朝体のフォントが割り当てられている。

設定後




参考:
[1]フォント設定 - ArchWiki

スポンサーリンク

スポンサーリンク

0 件のコメント:

コメントを投稿