- 追加された行はこの色です。
- 削除された行はこの色です。
[[TeX/Font]]
*Type 1 フォント [#i72fdcaf]
Type 1 フォントとは、Adobe 社が開発したページ記述言語である PostScript 形式で記述されたフォントで、文字の拡大・縮小が簡単にできるアウトラインフォントです。PostScript プリンタに導入したり、コンピュータ上で使ったりすることができます。
TeX でももちろん使うことができます。特に、Type 1 フォントがインストールされているときれいな PS, PDF ファイル等を出力することができます。
拡張子は ''.pfb''(バイナリファイル)、''.pfa''(ASCII ファイル)がよく使われます。
**市販されている欧文用 PostScript フォント集 [#g5d8e3b8]
#amazon(484431937X,left,[TrueType フォントパーフェクトコレクション])
#amazon(,clear)
**Type 1 フォントの使用例 [#r806e785]
-[[Bitstream>TeX/Font/Type1/Bitstream]]
*[[他形式からの変換>TeX/Font/Type1/convert]] [#x889b9c7]
METAFONT(''.mf'')などから Type 1(''.pfb'', ''.pfa'')への変換方法を解説します。
*TeX での Type 1 フォントの利用 [#c6268e6f]
TeX で Type 1 フォントを利用するためには、 若干の作業をしなければなりません。具体的な手順としては
+ファイル名の変更(Berry 則にもとづいて)
+''.afm'' ファイルの生成と修正(''.afm'' ファイルが付属していなければ) [pf2afm, type1afm]
+''.tfm'' ファイルの生成 [afm2tfm]
+''.vf'' ファイルの生成 [afm2tfm]
+''.enc'' ファイルの生成 [afm2tfm]
+''.fd'', ''.map'' ファイルの作成
+''.sty'' ファイルの作成
を行います([ ] 内は使用するプログラムの名前です)。
3-6(3-7)の作業を自動でやってくれるのが fontinst パッケージです。この後説明します。
*準備 [#d00b0a86]
次のようなツールが必要になる場合があります。
-[[t1lib>TeX/Font/t1lib]] (type1afm)
-[[t1utils>TeX/Font/t1utils]]
インストール方法については上のページを参考にしてください。
*ファイル名の変更 [#y02d001f]
[[フォント名>TeX/Font/FontName]] を参考にしてファイル名を変更します。
*.afm ファイルの生成 [#gfcf3a36]
**pf2afm(t1utils に付属) [#y5ca64df]
$ pf2afm xxxx.pfb
を実行します。同じディレクトリ内にある複数の ''.pfb'' ファイルを処理する場合は次のようにすると簡単でしょう。
$ for i in *.pfb; do pf2afm $i; done
''pf2afm'' を実行すると
.notdef character ocurred among kern pairs
you'd better check the resulting AFM file.
のような警告が出る場合がありますが、今は無視します。
**type1afm(t1lib に付属) [#ib6ffbc7]
$ type1afm xxxx.pfb
を実行します。同じディレクトリ内にある複数の ''.pfb'' ファイルを処理する場合は次のようにすると簡単でしょう。
$ for i in *.pfb; do type1afm $i; done
*.tfm, .vf, .enc ファイルの生成 [#v2f4212c]
teTeX ディストリビューションに標準で付属する
-''afm2tfm''
-''vptovf''
を用い、''.afm'' ファイルを元に、''.tfm'', ''.vf'', ''.enc'' ファイルを生成します。おおまかな流れは以下の通りです。
+''afm2tfm'' の引数に ''.afm'' ファイルを指定し、以下のオプションをつけて実行する(''.tfm'' ファイルと ''.vpl'' ファイルができる)。
--''-p'' dviware(dvips, dvipdfm など)で用いるエンコーディングを記述したファイルを指定する。
--''-t'' TeX 側で用いるエンコーディングを記述したファイルを指定する。
--''-v'' ''.vpl'' ファイルのファイル名を指定する。
+''vptovf'' を用いて ''.vpl'' ファイルから ''.vf'', ''.tfm'' ファイルを作成する。
実際には次のように実行します。
$ afm2tfm hoge8a.afm -p 8r.enc -t ec.enc -v hoge8t.vpl hoge8r.tfm
''8r.enc'' は TeX Base 1 用のエンコーディングファイルです。''ec.enc'' は EC フォント用のエンコーディングファイルです(''T1'' エンコーディングに近いものです)。
これで ''hoge8r.tfm'' と ''hoge8t.vpl'' が作成されます。上を実行すると
hoge Hoge " TeXBase1Encoding ReEncodeFont " <8r.enc
のような出力が得られますので、これを
hoge Hoge " TeXBase1Encoding ReEncodeFont " <8r.enc <hoge.pfb
に変更して ''hoge.map'' に書き込んでおきます。
次に
$ vptovf hoge8t.vpl
を実行し、''hoge8t.vf'', ''hoge8t.tfm'' ファイルを生成します。これで ''.tfm'' ファイルは ''hoge8r.tfm'' と ''hoge8t.tfm'' の2種類ができたことになります(両方とも必要です)。
*テスト [#t4e187cd]
テストするときには、次のようにします。
-[[フォント出力のテスト>TeX/Font/FontTest]]
まず、''.sty'' ファイルを作っていないのなら、プリアンブルで使いたいフォントを指定する必要があります。Type 1 フォントを使う場合 T1 エンコーディングのはずですから、その指定も一緒にしておきましょう。
を参考にテストしてみてください。
\usepackage[T1]{fontenc}
\renewcommand*{\rmdefault}{bpn}
''.sty'' ファイルを作っているのなら、それを読み込めばよいですね。
\usepackage{baldine721}
あとは表示させたい文章を打っていけばよいだけです。ただし、いくつもの書体で同じ文章を表示させることになるので、表示させたい文字列を定義しておくとよいでしょう。例えば次のようにします。
\def\fontdisplay{%
ABCDEFGHIJKLMNOPQRSTUVWXYZ\\
abcdefghijklmnopqrstuvwxuz\\
0123456789\\
ffi ffl\\
\&
}
すると、
\begin{quote}
\textit{\fontdisplay}
\end{quote}
とするだけで上の文字列が(この場合イタリックで)表示されます。
スモールキャップ体の場合は次のようにして小文字との大きさの比を見ておくとよいでしょう。
a\textsc{a}
b\textsc{b}
c\textsc{c}
d\textsc{d}
e\textsc{e}
*[[fontinst パッケージ>TeX/Font/FontInst]] [#r0a47531]
fontinst パッケージを用いると、多くの作業を自動で行ってくれます。fontinst パッケージの概要については上のページをご覧ください。
*参考 [#rc632b5e]
-[[TeX on UNIX の欧文多書体:http://gogh.phys.s.u-tokyo.ac.jp/~hikami/multiTeX.html]]
-[[Font HOWTO -- 9. TeX/LaTeX:http://www.linux.or.jp/JF/JFdocs/Font-HOWTO/x470.html]]