【 fc-match 】コマンド――フォントのマッチングと優先順位を確認するLinux基本コマンドTips(265)

本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、フォントのマッチングと優先順位を確認する「fc-match」コマンドです。

» 2018年12月13日 05時00分 公開
[西村めぐみ@IT]
「Linux基本コマンドTips」のインデックス

Linux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、システムにインストールされているフォントのマッチングと優先順位を確認する「fc-match」コマンドです。

fc-matchコマンドとは?

 「fc-match」はシステムにインストールされているフォントのマッチングと優先順位の確認を行うコマンドです。例えばフォントとして「serif」と指定した場合、具体的にどのフォントが使用されるのかを確認できます(※1)。

※1 serifとはひげ飾りがあるフォントの総称、日本語フォントでは明朝体に相当する。



 なお、インストールされているフォントの一覧を表示するには「fc-list」コマンド(連載第264回)を使います。



fc-matchコマンドの書式

fc-match [オプション] [パターン [要素]]

※[ ]は省略可能な引数を示しています。





fc-matchの主なオプション

短いオプション 長いオプション 意味
-s --sort 対象のフォントを優先順位で並べて一覧表示する
-a --all 対象のフォントを一覧表示する
-f フォーマット --format=フォーマット 出力形式を指定する(※2)
-v --verbose 詳しい情報を表示する

※2 %{file}、%{family}、%{style}、%{spacing}を指定可能。改行は「\n」で表す。





優先的に使われるフォントを表示する

 「fc-match パターン」は、指定したパターンで最優先に利用されるフォントを表示します。例えば「fc-match serif」と指定すると、使用フォントとして「serif」を指定した場合、具体的にはどのフォントが使用されるのか、確認できます(画面1)。

 パターンとしては、serifの他、「sans-serif」(ひげ飾りのないフォント、日本語の場合ゴシック体)や「monospace」(等幅フォント)を指定できます。フォント名を直接指定するとフォントファイル名が分かります。

 なお、パターンを指定しなかった場合、現在の環境で使うデフォルトのフォントを表示します。

コマンド実行例

fc-match serif

(「serif」を指定した場合に使用されるフォントを表示)

fc-match "PT Sans"

(「PT Sans」を指定した場合に使用されるフォントを表示)

fc-match

(デフォルトのフォントを表示)

LANG=C fc-match

(ロケール設定がLANG=C(標準)の場合のデフォルトフォントを表示)


画面1 画面1 パターンごとに利用するフォントを確認したところ


言語を指定してフォントを確認する

 使用するフォントを、言語設定ごとに確認できます。例えば、日本語環境におけるデフォルトのフォントを表示するには、「fc-match :lang=ja」のように指定します(画面2)。

 「日本語でserifを指定した場合」であれば「fc-match serif:lang=ja」のようにします。

 なお、不明な言語を指定した場合は、現在ロケール設定でのフォントを表示します。

コマンド実行例

fc-match :lang=ja

(日本語環境のデフォルトフォントを表示する)

fc-match serif:lang=ja

(日本語環境でSerifを指定したときのデフォルトフォントを表示する)


画面2 画面2 さまざまな言語設定ごとにデフォルトのフォントを確認したところ


パターンに当てはまる全てのフォントを表示する

 「-s」(--sort)または「-a」(--all)オプションを指定すると、パターンに該当する全てのフォントを表示します(画面3)。表示結果は並び順だけが異なります。「-s」を指定した場合、優先度が高い順に表示します。「-a」の場合、並べ替えはしません。

 表示行数が多いため、画面3では、headコマンドを使い、先頭の10件を表示しています。

コマンド実行例

fc-match --sort :lang=ja

(日本語環境で使用されるフォントを優先順位が高いものから一覧表示)

fc-match --sort serif:lang=ja

(日本語環境で「serif」を指定した場合に使用されるフォントを優先順位が高いものから一覧表示)


画面3 画面3 全てのフォントを表示したところ

 フォントの設定ファイルは、通常、「/etc/fonts/conf.d/」に保存されています(※3)。例えばCentOS 7の日本語環境用のデフォルトフォントである「VL ゴシック」の設定は「/etc/fonts/conf.d/65-1-vlgothic-gothic.conf」です。また、日本語フォントの優先度は「/etc/fonts/conf.d/65-nonlatin.conf」にある定義順に従っています。

※3 各設定ファイルは「/usr/share/fontconfig/conf.avail/」などにあるファイルへのシンボリックリンク。





【訂正:2018年12月14日午前11時30分】本記事の初出時、「serifとはひげ飾りのないフォントの総称、日本語フォントではゴシック体に相当する」「『sans-serif』(ひげ飾り付きのフォント、日本語の場合明朝体)」とありましたが、serifとsans-serifの説明が逆になっておりました。お詫びして訂正いたします。該当箇所は既に修正済みです(編集部)。

筆者紹介

西村 めぐみ(にしむら めぐみ)

PC-9801NからのDOSユーザー。PC-486DX時代にDOS版UNIX-like toolsを経てLinuxへ。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。


Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。