Fontconfig(または fontconfig)は、システム全体のフォントの設定(代替フォントの設定、フォント置換の設定、レンダリングの設定、など)に関する情報をアプリケーションに提供するためのライブラリである。fontconfigは、元はキース・パッカードによって作られ、現在は Behdad Esfahbod によってメンテナンスされている。

fontconfigは、permissive free software licence のもとで配布されている自由ソフトウェアである。

fontconfigは、典型的には、Linuxおよび他のUnixライクなシステムのデスクトップ環境で使われており、フォントの扱いにおいて重要な役割を果している。

利用

エンドユーザーは、fontconfigを使ってシステムのフォント設定をカスタマイズできる。

アプリケーションは、以下の2つの方法で fontconfig を利用できる:

  1. システム上で利用できるフォントを問い合わせる
  2. 指定したパラメータ(パターン)にできるだけ近い(よく似た)フォントを問い合わせる

フォントのマッチングを行なうために、fontconfig はインストールされているすべてのフォントについての情報を保存する。例えば、フォントファミリー、スタイル、太さ、dpi、Unicodeの対応範囲などの情報である。この情報はフォント置換を行うためにも使われる。

設定

fontconfigでは、XMLフォーマットを使って設定ファイルを記述する。fontconfigファイル用のDTDは、通常/etc/fonts/fonts.dtdに置かれている。

マスター設定ファイルは通常 /etc/fonts/fonts.conf である。これに加えて、以下に示す他のいくつかの設定ファイルも(存在すれば)参照される。

  • /etc/fonts/local.conf
  • /etc/fonts/conf.d/*.conf
  • $XDG_CONFIG_HOME/fontconfig/fonts.conf
  • $XDG_CONFIG_HOME/fontconfig/conf.d/*.conf
  • ~/.fonts.conf (将来のバージョンで廃止される予定)

設定ファイルの簡単な例:

詳細については fontconfig マニュアルに記載されている。

ユーティリティ

fontconfig には、フォント設定を管理する8つのコマンドラインユーティリティが付属している:

  • fc-list: fontconfigが把握しているすべてのフォントまたはパターンにマッチするすべてのフォントの一覧を表示する。
  • fc-match: fontconfigのマッチングルールに従ってフォントパターン(デフォルトで空のパターン)のマッチングを行い、利用可能なフォントのうち最も適切なものを見つける。
  • fc-cache: 指定されたディレクトリまたは設定ファイルで指定されたすべてのディレクトリから、FreeTypeが扱えるすべてのフォントのキャッシュを作成する。
  • fc-cat: キャッシュファイルまたはフォントディレクトリからフォント情報を読み込み、それをASCII 形式で出力する。
  • fc-query: フォントファイルについて問い合わせ、結果を表示する。
  • fc-scan: フォントファイルまたはディレクトリをスキャンし、結果を表示する。
  • fc-pattern: 指定したパターンに最も近いフォントを表示する。
  • fc-validate: フォントファイルを検証し、結果を表示する。

Fontconfigは、FreeType(フォントレンダラ)および Expat(XMLパーサライブラリ)という、二つの自由ソフトウェアに依存している。

Fontmatrix は、グラフィカルユーザインタフェイスで fontconfig を使ってシステム上でフォントを表示したり、選択したり、管理するのに役立つ。

バージョン番号の付け方

最後の番号が90以上のときはプレリリースバージョンを示す、というバージョンの付け方をしている。

外部リンク

  • fontconfig 公式サイト
  • Font Configuration and Customization for Open Source (PDF)

脚注


Fontconfig error Cannot load default config file (6.3.1) Products

Config Bold Font xFonts.pro

Config Font Webfont & Desktop MyFonts

Fontconfig Wikipedia

Images of Fontconfig JapaneseClass.jp