Xフォントインストールの手引き

XFree86 にフォント「ナガ10」をインストールする方法を説明します。
その他のX Window Systemの実装でも大差はないと思います。


[Fonts] [Top]

 全てのユーザが使うために

ディレクトリ /usr/X11R6/lib/X11/fonts/ 以下が, フォントデータの格納されている場所です。
標準では /usr/X11R6/lib/X11/fonts/misc/ に 14, 16ドット日本語フォントなどが置かれています。
ここでは「ナガ10」もこのディレクトリにインストールしてみます。

1. データのコンバート

「ナガ10」は BDF形式 でデータ化されています。
このまま用いることもできますが, フォントをメモリに読込むときの負荷が大きくなるため, 次のようにして PCF形式 に変換するのが普通です。

	snagao@bono[1]% bdftopcf knj10.bdf -o knj10.pcf
これでPCF形式のファイルknj10.pcfが生成されます。
その他のbdfファイルも, 同様にしてPCF形式に変換します。

2. データの圧縮

フォントデータを圧縮して保管することで, ディスクスペースが節約できます。
圧縮には compress か, またはXのバージョンが X11R6.3以降では gzip を用いることができます。

	snagao@bono[2]% compress knj10.pcf
または

	snagao@bono[2]% gzip knj10.pcf
とすると, knj10.pcf.Z または knj10.pcf.gz が生成されます。

3. ファイルを格納

knj10.pcf.Z(または.gz)を /usr/X11R6/lib/X11/fonts/misc/ に移動します。
このとき、su コマンドで root になるのが普通です。:)

	snagao@bono[3]% su
	Password:
	root@bono[1]% mv knj10.pcf.Z /usr/X11R6/lib/X11/fonts/misc/

4. mkfontdir

フォントをコピーしただけではダメで, mkfontdir コマンドで
フォント名とファイル名の対応を表す fonts.dir を更新する必要があります。

	root@bono[2]% mkfontdir /usr/X11R6/lib/X11/fonts/misc/

5. fonts.alias

Xのフォント名は -misc-fixed-.... と非常に長ったらしくわずらわしいです。
そのため、fonts.alias ファイルにフォントの 別名を定義することができます。
例えば、ナガ10の漢字フォントに k10 という別名をつけるには, ファイル /usr/X11R6/lib/X11/fonts/misc/fonts.alias に

	k10  -misc-fixed-medium-r-normal--10-90-75-75-c-100-jisx0208.1983-0
という一行を加えます。snagaoのマシンではこの他、

	kb10 -misc-fixed-bold-r-normal--10-90-75-75-c-100-jisx0208.1983-0
	a10  -misc-fixed-medium-r-normal--10-90-75-75-c-50-iso8859-1
	r10  -misc-fixed-medium-r-normal--10-90-75-75-c-50-jisx0201.1976-0
	b10  -misc-fixed-bold-r-normal--10-90-75-75-c-50-iso8859-1
という記述をしています。

7. 変更を有効にする

今までの作業でほぼインストールは終了です。一般ユーザに戻りましょう。
以下のようにすれば, 即座にこれらのフォントを使うことができます。

	snagao@bono[4]% xset fp rehash
こうすることで、更新した fonts.dir と fonts.alias が有効になります。
top of this page

 自分一人で楽しむために

「使いたいフォントがあるけどrootになれない…」と嘆く必要はありません。
基本的な作業は
全てのユーザが使うための場合と同じなので, 一度そちらに目を通しておいてください。

1. フォントをインストールするディレクトリを作る

自分のホームの好きな場所にフォント用のディレクトリを作成します。
ここでは、~/fonts/ をフォント用のディレクトリにしてみます。

	snagao@bono[1]% mkdir ~/fonts

2. フォントデータを格納する

全てのユーザが使うためと同様に, BDF形式のデータをPCF形式に変換し, さらに圧縮します。

	snagao@bono[2]% bdftopcf knj10.bdf -o knj10.pcf
	snagao@bono[3]% compress knj10.pcf (または gzip)
そして、出来上がったknj10.pcf.Z(または.gz)を~/fonts/に格納します。

	snagao@bono[4]% mv knj10.pcf.Z ~/fonts/

3. mkfontdir, fonts.alias

mkfontdirでfonts.dirを作成します。

	snagao@bono[5]% mkfontdir ~/fonts
そして、必要ならば~/fonts/fonts.aliasを作ります。

	snagao@bono[6]% vi ~/fonts/fonts.alias

4. フォントパス

Xでは、フォントパスからフォントデータを探します。
したがって、ここでは~/fontsをフォントパスに加える必要があります。

たとえば、

	snagao@bono[7]% xset fp+ ~/fonts
とすると、フォントパスの最後に~/fontsが加わり、

	snagao@bono[7]% xset +fp ~/fonts
とすると、フォントパスの先頭に~/fontsが加わります。

フォントパスは

	snagao@bono[7]% xset q
とすると、

	Keyboard Control:
	  auto repeat:  on    key click percent:  0    LED mask:  00000000
	...
	(省略)
	...
	Font Path:
	  /usr/X11R6/lib/X11/fonts/myfont:unscaled,/usr/X11R6/lib/X11/fonts/mis
	c:unscaled,/usr/X11R6/lib/X11/fonts/75dpi:unscaled,/usr/X11R6/lib/X11/f
	onts/100dpi:unscaled,/usr/X11R6/lib/X11/fonts/Type1,/usr/X11R6/lib/X11/
	fonts/Speedo,/usr/X11R6/lib/X11/fonts/non-cjk,/usr/home/snagao/fonts
	...
のように確認できます。

Xを使うときにはいつも~/fontsをフォントパスに加えたいならば, ~/.xinitrcなどに

	xset fp+ $HOME/fonts
のような記述を加えればいいでしょう。
top of this page