TTF-HOWTO

概要

X 環境へ TrueType フォントをインストールする際に必要となる知識と手順.


目次

1. はじめに
2. XLFD
2.1. XLFD の書式
2.2. XLFD の各フィールドの意味
3. fonts.dir
3.1. fonts.dirの書式
3.2. TTCap
4. フォントの path を X に教える
4.1. fontpath
4.2. フォントを表示してみる
4.3. フォントの path を覚えさせておく
5. ちょっとした Tips
5.1. Weight に関する Tips
5.2. エンコーディングとファミリーに関する Tips
6. ソフトウェア別の設定例
6.1. Emacs
6.2. xterm
6.3. gtk+ 1.2 を使うソフトウェア
6.4. fontconfigを使うソフトウェア
7. 免責および著作権
7.1. 免責
7.2. 著作権

1. はじめに

今や XFree86 は標準で xtt や freetype による TrueType フォントのサポートがあり,最近のディストリビューションであるなら労せず TrueType フォントが表示できる環境を手にいれることができます.

しかし,市販パッケージ,或いはフリーで配布されているフォントを入手してシステムへインストールし,各ソフトウェアから使えるようにするには,いくつかの手順を踏む必要があります.

図 1. Gimp の文字ツールでの使用例

Gimp の文字ツールでの使用例

そこで,ここでは主に XFree86 環境へ TrueType フォントをインストールする際に必要となる最低限の知識と手順について触れてみたいと思います.

尚,この文書を作成するにあたり参考にさせて戴いきましたサイトをご紹介しますとともに,作者様に感謝申し上げます.

The X-TrueType Server Project

2. XLFD

XFree86 では,論理フォント名 (XLFD [1]) というモノでフォントを管理しています.長くて複雑ですが,覚えておくと多少幸せになれます.

2.1. XLFD の書式

書式
-Foundry-Family-Weight-Slant-SetWidth-AddStyle-PixelSize-PointSize-ResolutionX-ResolutionY-Spacing-AverageWidth-Registry-Encoding
Unscalable フォントの例
-misc-fixed-medium-r-normal--12-120-75-75-c-60-iso8859-1
Scalable フォント (TrueType , Type1 等) の例
-dynalab-dfhsgothic-medium-r-normal--0-0-0-0-c-0-jisx0208.1990-0

メモ

TrueType フォントの場合, pixel size, point size, resolution X, resolution Y, average width の部分は通常 0 にします.

2.2. XLFD の各フィールドの意味

Foundry

提供者名.フォント制作会社 (Adobe や Dynalab , Ricoh 等) や,作者がつけたブランド名 (kochi や shinonome , efont 等) ,或いは,使用者がテキト〜につけたり :-p します.

Family

フォントの名前. gothic , times 等.

名前については,テキト〜につけても構いませんし, TrueType フォントの場合,ftdump を使って PostScript name: 行を摘出し,それを基につけても良いかと思います. (ftdumpは freetype-utils というパッケージに収録されています)

たとえば,

$ for f in *.tt[cf];
do psname=`ftdump $f | \
grep '^PostScript.*$' | \
sed 's/PostScript name: \([^-]*\)-\([^-]*\)-.*/\1-\2/'`;
echo "$f     $psname" >> font_psname.list;
done

とやればカレントディレクトリに放り込んである *.ttc*.ttf ファイルの ファイル名と PostScript name の Weight のフィールドまでの部分の対応一覧が font_psname.list というファイルに書き出せます.[2]

Weight

文字の太さ (重さ?) .

  • thin (ultralight)

  • extralight

  • light

  • book (semilight,demilight)

  • medium

  • demibold (semibold)

  • bold

  • heavy (extrabold)

  • black (ultrabold)

などが使われます.上から順に下に向かって太く (重く?) なります.

Slant

文字の傾き.

  • Roman (正字体 r)

  • Italic (イタリック体 i)

  • Oblique (斜体 o)

  • Reversed Italic (逆傾きのイタリック体 ri)

  • Reversed Oblique (逆傾きの斜体 ro)

が使われます.

SetWidth

文字幅. condenced や normal , extended 等

AddStyle

付加情報.普通,ここは空のままが多いです.たまに ja とか sans とかいう付加スタイル情報が書かれます.

PixelSize

ピクセルでのサイズです.単純に 12 とあれば 12pixel です. TrueType フォントなどのスケーラブルフォントでは,ここを 0 にしておきます.

PointSize

ポイントサイズとありますが,数字は deci point の値を書きます. TrueType フォントなどのスケーラブルフォントではここも 0 にしておきます.

メモ

余談ですが…….伝統的に (謎) 1point (1pt) は 1/72inch で, pixel と point の関係は,

pixel = point * resolution / 72
point = pixel * 72 / resolution

となっています.[3]

ResolutionX

フォントの X 軸方向の解像度.7275100 が使われることが多いです. TrueType フォントなどのスケーラブルフォントでは通常ここを 0 にしておきます.

ResolutionY

フォントの Y 軸方向の解像度.以下 ResolutionX と同様.

Spacing

文字送り.

  • p プロポーショナル (可変)

  • m モノスペース (一定)

  • c 文字セル

があります.

AverageWidth

平均文字幅. TrueType フォントなどのスケーラブルフォントでは通常ここを 0 にしておきます.*.bdf*.pcf などビットマップフォントでは PointSize と同値 [4] か, PointSize の半分 [5] にします.

Registry

登録組織,或いは標準名

Encoding

エンコーディング.上の Registry とペアで単に encoding と称される場合もあります.フォントのキャラクターコード範囲を指定します.

たとえば,jisx0208.1990-0 であれば, JIS X 0208-1990 の範囲の文字となります.[6]

3. fonts.dir

新たに TrueType フォントをシステムに追加するとき /usr/X11R6/lib/X11/fonts 以下,或いは,/usr/share/fonts などに TrueType などのディレクトリを作成し,そこへ TrueType フォントをコピーしますが,悲しいことに (謎) それだけでは ソフトウェアからフォントを利用できません.

インストールされたフォントを論理フォント名によって利用できるように,インストールしたディレクトリ内に fonts.dir というファイルを作成しておくという作業が必要になります.

fonts.dir とは,そのディレクトリ内にあるフォントファイルと XLFD の対応をリストしたファイルです.

メモ

上記は自分に管理者権限がある場合で,自分に管理者権限が無い場合 /usr/X11R6/lib/X11/fonts などに置けないですので,~/ に任意のディレクトリ,例えば ~/fonts/TrueType を作成し,そこにフォントファイルと fonts.dir を置いて利用することになります.

3.1. fonts.dirの書式

書式
line_count (number)
Filename -Foundry-Family-Weight-Slant-SetWidth-AddStyle-PixelSize-PointSize-ResolutionX-ResolutionY-Spacing-AverageWidth-Registry-Encoding

第一行目には記述されているファイル名と XLFD の対応リストの数を記入します.*.bdf*.pcf フォントだと mkfontdirfonts.dir が生成できます.

TrueType フォントの場合,

  • mkttfdir.pl を使う.

  • もしくは ttmkfdirfonts.dirの骨を書き出して加工する.

  • 一からエディタでゴリゴリ書く. (これはカナリ面倒……)

  • fonts.dir でっち上げスクリプト などを自分で作っておいてそれを利用する.

などで作らなくてはなりません.

fonts.dir 記述の手助けになるかどうか判りませんが,fonts.dir & fonts.alias でっち上げゲートウェイを設置しておきましたので,宜しければお使いください.

例 [Bitmap font の場合]
4
shnmk12.pcf.gz -shinonome-gothic-medium-r-normal--12-110-75-75-c-120-jisx0208.1990-0
shnmk12b.pcf.gz -shinonome-gothic-bold-r-normal--12-110-75-75-c-120-jisx0208.1990-0
shnmk12i.pcf.gz -shinonome-gothic-medium-i-normal--12-110-75-75-c-120-jisx0208.1990-0
shnmk12bi.pcf.gz -shinonome-gothic-bold-i-normal--12-110-75-75-c-120-jisx0208.1990-0
                        
例 [TrueType font の場合]
15
fn=0:bw=0.5:dfhsg3.ttc -dynalab-dfhsgothic-light-r-normal--0-0-0-0-m-0-jisx0208.1983-0
fn=0:bw=0.5:ai=0.1:dfhsg3.ttc -dynalab-dfhsgothic-light-i-normal--0-0-0-0-m-0-jisx0208.1983-0
fn=0:bw=0.5:ai=0.2:dfhsg3.ttc -dynalab-dfhsgothic-light-o-normal--0-0-0-0-m-0-jisx0208.1983-0
fn=0:bw=0.5:ai=-0.1:dfhsg3.ttc -dynalab-dfhsgothic-light-ri-normal--0-0-0-0-m-0-jisx0208.1983-0
fn=0:bw=0.5:ai=-0.2:dfhsg3.ttc -dynalab-dfhsgothic-light-ro-normal--0-0-0-0-m-0-jisx0208.1983-0
fn=1:dfhsg3.ttc -dynalab-dfhsgothicp-light-r-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=1:ai=0.1:dfhsg3.ttc -dynalab-dfhsgothicp-light-i-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=1:ai=0.2:dfhsg3.ttc -dynalab-dfhsgothicp-light-o-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=1:ai=-0.1:dfhsg3.ttc -dynalab-dfhsgothicp-light-ri-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=1:ai=-0.2:dfhsg3.ttc -dynalab-dfhsgothicp-light-ro-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=2:dfhsg3.ttc -dynalab-dfhsgothicg-light-r-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=2:ai=0.1:dfhsg3.ttc -dynalab-dfhsgothicg-light-i-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=2:ai=0.2:dfhsg3.ttc -dynalab-dfhsgothicg-light-o-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=2:ai=-0.1:dfhsg3.ttc -dynalab-dfhsgothicg-light-ri-normal--0-0-0-0-p-0-jisx0208.1983-0
fn=2:ai=-0.2:dfhsg3.ttc -dynalab-dfhsgothicg-light-ro-normal--0-0-0-0-p-0-jisx0208.1983-0
           

3.2. TTCap

X の TrueType 独自の拡張に TTCap というものがあります.これを用いることにより文字の傾き,ウェイトなどを細かく制御することができます.

3.2.1. TTCap を使った fonts.dir の書式

書式
Key=Value:FileName -Foundry-Family-Weight-Slant-SetWidth-AddStyle-PixelSize-PointSize-ResolutionX-ResolutionY-Spacing-AverageWidth-Registry-Encoding

TTCap は, Key と Value を '=' (イコール) でつなぎ,その後ろとを ':' コロンで区切った書式で,filename の前へ記述します.

3.2.2. 良く使用されるオプション

【 Face Number 】 fn=整数

TrueType Collection (*.ttc) フォントファイルで取り出す face 番号.当然,*.ttf では意味を持ちません. 0-2 までの face が含まれていることが多いようです.

例を挙げると,上記 fonts.dir の例 [TrueType font の場合] での dfhsg3.ttc というフォントファイルには 3 つの face が含まれていて,それぞれ DF 平成ゴシック, DFP 平成ゴシック, DFG 平成ゴシックという名前になっています.そこで例では face0 を dfhsgothic, face1 を dfhsgothicp, face2 を dfhsgothicgという名前づけを行なっています.

メモ

True Type Collection フォントは複数の face を取り出せますが,フォントにより face 番号で取り出せる face が異なり,必ずしも face0 が等幅, face1 がプロポーショナルというわけではないようです.

どの face 番号でどのような face が取り出せるかは,ftstrtto というユーティリティで見ることができます.[7]

例: dfhsg5.ttc の face0, face1, face2 を解像度 75dpi サイズ 16pt で 見比べる.
$ ftstrtto -c 0 -g -u -r 75 16 dfhsg5.ttc \
 "`echo 'ABCDEFGHIJKabcdefghijk01234567 ひらがなカタカナ漢字' | \
iconv -f EUC-JP -t UTF-8`" &

$ ftstrtto -c 1 -g -u -r 75 16 dfhsg5.ttc \
 "`echo 'ABCDEFGHIJKabcdefghijk01234567 ひらがなカタカナ漢字' | \
iconv -f EUC-JP -t UTF-8`" &

$ ftstrtto -c 2 -g -u -r 75 16 dfhsg5.ttc \
 "`echo 'ABCDEFGHIJKabcdefghijk01234567 ひらがなカタカナ漢字' | \
iconv -f EUC-JP -t UTF-8`" &
【 Force Spacing 】 fs=(c|m|p)

フォントメトリック計算法を指定します.与える value は XLFD の Spacing フィールドの文字と同じで,このオプションで XLFD の Spacing フィールドの値をオーバーライドします. このオプションの指定が無い場合は XLFD の Spacing に指定してある Spacing によって計算されます.

【 Bounding box Width 】 bw=実数

このオプションは固定幅フォントのみで有効で,バウンディングボックス幅の倍率を指定します.指定がない場合 1.0 となります. Scale Width オプションも指定されている時は Scale Width 適用後このオプションが適用されます.

フォントに依っては,欠け,重なり等が発生しますので,値は試行錯誤で微調整する必要があります.

【 Scale Width 】 sw=実数

文字幅の倍率を指定します.指定がない場合,1.0 となります.

【 Auto Italic 】 ai=実数

文字の傾きを指定します.良く使われるのは Italic 体に 0.2Oblique 体に 0.4 などの値です.フォントデザインに依っては大きな値を指定すると崩れて読めない場合がありますので,フォント毎に試行錯誤で値を微調整することをお奨めします.特に日本語フォントなどはあまり大きな値を指定せず 0.10.2あたりを指定するのが良いでしょう.

【 Double Strike 】 ds=(y|n)

二重打ち効果を使用して疑似的に太字に見せるか否かを指定します. ds=y にすると,擬似的なボールドになります.

ウェイトの揃っていないフォントで bold を使いたい時などに使います.

【 Very Lazy metrics calculation method 】 vl=(y|n)

vl=y にすると,プロポーショナル,モノスペースに於いてメトリック計算を厳密に行なわないようになります.

embeded bitmap な TrueType フォントの場合,このオプションをつけると埋め込みビットマップフォント表示時に文字の一部が欠たりかすれたりということがあります.最近の PC はパワーありますのでこのオプションは使わない方が良いかもしれません.

4. フォントの path を X に教える

4.1. fontpath

フォントをコピーし,そのディレクトリに fonts.dir を置いたら,次に X にそのディレクトリの場所を教えてあげなくてはなりません.

教えてあげるには xset というコマンドを使います.

/usr/X11R6/lib/X11/fonts/TrueType を fontpath の末尾に追加する.
$ xset fp+ /usr/X11R6/lib/X11/fonts/TrueType
$ xset fp rehash
                        
/usr/X11R6/lib/X11/fonts/TrueType を fontpath の先頭に追加する.
$ xset +fp /usr/X11R6/lib/X11/fonts/TrueType
$ xset fp rehash
                        
/usr/X11R6/lib/X11/fonts/TrueType を fontpath から削除する.
$ xset -fp /usr/X11R6/lib/X11/fonts/TrueType
$ xset fp rehash
                        
fontpath をデフォルトの状態に戻す.
$ xset fp default
$ xset fp rehash
                        

注意

fonts.dir の記述に問題がある場合,xset 実行時にエラーが出ますので,エラーした場合は fonts.dir の記述を再確認しましょう.

メモ

自分の $HOME にディレクトリを作成してフォントを置いた場合,たとえば ~/fonts/TrueType などにした場合は,上記の例の /usr/X11R6/lib/X11/fonts/TrueType を,~/fonts/TrueType に置き換えてください.

4.2. フォントを表示してみる

xset 実行後,追加したフォントが無事使えるのかどうか確認してみましょう.

確認には nexfontsel を使ってみると良いでしょう.

図 2. nexfontsel での表示

nexfontsel での表示

4.3. フォントの path を覚えさせておく

xset で教えてあげても,一度 X を終了すると, X は追加された fontpath を忘れてしまい,再度 startx を行なったときに fontpath をデフォルトに戻してしまいます.毎回毎回 startx の度に xset fp+ .... などとやってられませんので,設定を覚えさせておきます.

自分に管理権限があり,システム全体の設定とする場合は, X の設定ファイル XF86Config-4 (XFree86 4.x の場合) の Files セクションへ FontPath を追記します.

XF86Config-4 の記述例
Section "Files"
    FontPath "/usr/X11R6/lib/X11/fonts/japanese/:unscaled"
    FontPath "/usr/X11R6/lib/X11/fonts/intlfonts/:unscaled"
    FontPath "/usr/X11R6/lib/X11/fonts/ucs/:unscaled"
    FontPath "/usr/X11R6/lib/X11/fonts/TrueType/"
EndSection

メモ

管理権限がない,または,自分だけが 追加したフォントを使用する場合は,~/.xinit.d/hook

/usr/X11R6/bin/xset +fp $HOME/fonts/TrueType
/usr/X11R6/bin/xset fp rehash

となどと記述しておきます.[8]

これで次に X を立ち上げた時も追加したフォントを利用できます.

5. ちょっとした Tips

5.1. Weight に関する Tips

同じファミリーでウェイトが各太さ (重さ?) 品揃えがあるフォントの場合, family を同じにして Weight 別にフォントファイルを指定してやることで, TTCap での疑似ボールド効果よりもより綺麗な表示が期待でき,また,ウェイトを細かく管理できます.

各ウェイト毎に対応するフォントファイルを指定した例と,その出力例
dfhsg3.ttc -dynalab-dfhsgothic-light-r-normal--0-0-0-0-c-0-jisx0208.1983-0
dfhsg5.ttc -dynalab-dfhsgothic-medium-r-normal--0-0-0-0-c-0-jisx0208.1983-0
dfhsg7.ttc -dynalab-dfhsgothic-bold-r-normal--0-0-0-0-c-0-jisx0208.1983-0
dfhsg9.ttc -dynalab-dfhsgothic-extrabold-r-normal--0-0-0-0-c-0-jisx0208.1983-0
                        

図 3. 平成ゴシックの各ウェイト毎の出力

平成ゴシックの各ウェイト毎の出力

5.2. エンコーディングとファミリーに関する Tips

ゴシック体などのいわゆるヒゲの無い sans-serif な書体を使っていて,I (英大文字のアイ) と l (英小文字のエル) や O (英大文字のオー) と 0 (数字のゼロ) の区別がつきにくいなど不都合を感じる時がありますが,本文フォントなどでそれらをパッと見で明確に区別したい場合に,jisx0208.1983-0の部分と,ascii-0部分 (或いは iso8859-1部分) に別々のフォントファイルを指定し,同じファミリー名をつけて使うということが可能です.

foundry や family は,自分が判りやすく,他の既存のフォントと重複しない名前をつけておけば良いでしょう.[9]

東風ゴシックと Andale Mono の合体例
andalemo.ttf -ttmix-monogothic-medium-r-normal--0-0-0-0-c-0-iso8859-1
bw=0.5:kochi-gothic.ttf -ttmix-monogothic-medium-r-normal--0-0-0-0-c-0-jisx0201.1976-0
kochi-gothic.ttf -ttmix-monogothic-medium-r-normal--0-0-0-0-c-0-jisx0208.1983-0
                        

図 4. kochi-gothic と monogothic (仮称) フォント表示例

kochi-gothic と monogothic (仮称) フォント表示例

6. ソフトウェア別の設定例

6.1. Emacs

~/.Xresources へ記述する.

Emacs.Fontset-0:-*-fixed-medium-r-normal--14-*-*-c-*-*-fontset-defaults,\
    ascii:-monotype-andale mono-medium-r-*-*-14-*-*-*-m-*-iso8859-1,\
    latin-jisx0201:-motoya-cedar1mono-medium-r-*-*-14-*-*-*-m-*-jisx0201.1976-0,\
    katakana-jisx0201:-motoya-cedar1mono-medium-r-*-*-14-*-*-*-m-*-jisx0201.1976-0,\
    japanese-jisx0208:-motoya-cedar1mono-medium-r-*-*-14-*-*-*-m-*-jisx0208.1990-0,\
    japanese-jisx0212:-motoya-cedar1mono-medium-r-*-*-14-*-*-*-m-*-jisx0212.1990-0
Emacs.Font: fontset-defaults
            

変更後,以下のコマンドを実行し反映させる.

$ xrdb -merge ~/.Xresources

6.2. xterm

~/.Xresources へ記述する.

xterm*fontSet: -misc-fixed-medium-r-normal-*-14-*,-misc-fixed-medium-r-normal-*-14-*-iso8859-1
xterm*boldfontset: -misc-fixed-bold-r-normal-*-14-*,-misc-fixed-bold-r-normal-*-14-*-iso8859-1
            

変更後,以下のコマンドを実行し反映させる.

$ xrdb -merge ~/.Xresources

6.3. gtk+ 1.2 を使うソフトウェア

gtk+ 1.2 を使うソフト[10] のメニューなど User Interface に関するフォントは, ~/.gtkrc に以下の様に記述する.

style "gtk-default-ja"
{
    fontset = "-monotype-andale mono-medium-r-*-*-12-*-*-*-m-*-iso8859-1,\
    -motoya-cedar1mono-medium-r-*-*-12-*-*-*-m-*-jisx0201.1976-0,\
    -motoya-cedar1mono-medium-r-*-*-12-*-*-*-m-*-jisx0208.1983-0,\
    -motoya-cedar1mono-medium-r-*-*-12-*-*-*-m-*-jisx0208.1990-0,\
    -motoya-cedar1mono-medium-r-*-*-12-*-*-*-m-*-jisx0212.1990-0"
}
widget "*Text" style "gtk-default-ja"
            

6.4. fontconfigを使うソフトウェア

6.4.1. fontconfigのコンフィグレーション

重要なのは fontconfig の設定がうまくいっているかどうかです.

fontconfig のコンフィグファイル /etc/fonts/local.conf[11] で TrueType フォントがインストールしてあるディレクトリが指定してあるかどうか,また, fc-list で,インストールしてある TrueTypeフォントがリストされるか確認しましょう.リストは UTF-8 で吐き出されるので,フォント名に因っては化けます.

$ fc-list | iconv -f UTF-8 -t EUC-JP | sort

若しくは

$ fc-list | nkf -e | sort

化けて見辛い場合は,上記のように iconvnkf に pipe すると良いでしょう.

/etc/fonts/local.confはシステム全般での設定ファイル,~/.fonts.confは各ユーザ個別の設定ファイルです.

/etc/fonts/fonts.conf/etc/fonts/local.conf~/fonts.conf, は XML[12]で記述され,DTD[13]fonts.dtdというファイル名で /etc/fontsディレクトリ内にありますから編集は簡単です. emacs の psgml-modeで編集すると楽に編集できるでしょう.

6.4.1.1. dir

fontconfig でフォントをインストールしたディレクトリが走査されるように指定するには,/etc/fonts/local.conf ,或いは~/.fonts.confへ以下の様に<dir>〜</dir>タグでフォントのあるディレクトリを囲んで追記します.指定されたディレクトリは再帰的に走査され,フォントのリストが作成されます.

<dir>/usr/X11R6/lib/X11/fonts</dir>
<dir>/usr/share/fonts</dir>
<dir>~/.fonts</dir>
      
6.4.1.2. hintingの制御

フォントサイズによって,また,フォントによってはヒンティングを強く効かせると読み辛くなったり,逆に汚くなったりすることがあるが,それは autohint と hinting によって制御できる.

以下の例では 16pixelより小さいサイズでは autohintを無効にし,16pixel以上では autohintoを有効にしている.

<match target="font">
  <test name="pixelsize" compare="less">
    <double>16</double>
  </test>
  <edit name="hinting" mode="assign">
    <bool>true</bool>
  </edit>
  <edit name="hintstyle" mode="assign">
    <const>hintslight</const>
  </edit>
  <edit name="autohint" mode="assign">
    <bool>false</bool>
  </edit>
</match>

<match target="font">
  <test name="pixelsize" compare="more_eq">
    <double>16</double>
  </test>
  <edit name="hinting" mode="assign">
    <bool>true</bool>
  </edit>
  <edit name="hintstyle" mode="assign">
    <const>hintfull</const>
  </edit>
  <edit name="autohint" mode="assign">
    <bool>true</bool>
  </edit>
</match>

6.4.2. Xft2 + fontconfigサポートが有効なmozilla

6.4.2.1. コンテンツエリア

ビルド時に ./configure のオプションで --enable-xft を指定し Xft2 + fontconfig サポートが有効になっている Mozilla は,メニューの Edit → Preference のフォント設定でフォントを選択するだけです.fontconfigが有効なMozillaでは以下のようなフォントリストが表示されます.

図 5. Xft2 + fontconfigが有効なMozillaでのフォント選択リスト

Xft2 + fontconfigが有効なMozillaでのフォント選択リスト

図 6. Xft2 + fontconfigが有効なMozillaでの表示例

Xft2 + fontconfigが有効なMozillaでの表示例
拡大図
6.4.2.2. User Interface

User Interface 部分のフォント設定は,~/.mozilla/$USER/XXXXXXXX.slt/chrome/userChrome.css に記述します.fc-list で表示されるフォント名で指定しないとならない点に注意が必要です.

以下は私が行なっている設定例です.

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* set default name space to XUL */
* {
  font-size: 12px;
  font-family: "Anito-L-Mono", monospace !important;
}
6.4.2.3. Mozillaの Xft2 + fontconfig無効化

もしXft2サポートを無効にしたい場合,~/.mozilla/$USER/XXXXXXXX.slt/prefs.js に以下の設定を書いておくと良いでしょう.

user_pref("fonts.xft.enabled", false);

7. 免責および著作権

7.1. 免責

この文書は無保証です.この文書の利用およびこの文書に基づいて作業をされた結果,何らかの損害を被ったとしても,原著者はいかなる責任をも負いませんのでご了承ください.

7.2. 著作権

この文書の著作権は 山下繁行 にあります.この文書の配布ライセンスは,利用許諾のオプション A. B. を除外したオープン・パブリケーション利用許諾契約書 (OPL - Open Publication License) に従います.

OPL についての詳細は,http://www.opencontent.org/openpub/ を参照してください. また,八田真行氏による OPL ドラフト v1.0 日本語訳がhttp://www.opensource.jp/openpub/にて参照可能です.



[1] X Logical Font Description

[2] ただし,フォントファイルに PostScript name のデータがある場合に限ります.

[3] resolution は デバイスの 解像度 dpi

[4] 日本語マルチバイト文字などのいわゆる全角文字の場合

[5] ASCII , JIS X 0201 カナ などいわゆる半角文字の場合

[6] 間違っていることを曰ってるかも知れませんので,お気づきの方はツッコミいれてください.;-p

[7] ftstrtto は freetype-utils というパッケージに入っています

[8] ただし,これはxinitをフックしているmomonga-linuxだけの場合です.hook には実行パーミッションを与えておくこと.

[9] 同じことを fonts.alias を使って実現することも可能です.

[10] gimp 1.2 や sylpheed など

[11] 使用している OS やそのディストリビューションによって若干場所が異なるか,若しくはfontconfigのバージョンによっては /etc/fonts/fonts.confしか無い場合があるかもしれません

[12] Extensible Markup Language

[13] Document Type Definition