[[TeX/Font/Type1/Bitstream]]

*Baskerville (Bitstream) [#u4069570]

Baskerville は Cambridge University Press の古典の書籍でよく用いられているフォントです。細身なので、リュウミンやウェイトの小さいヒラギノと一緒に用いるとよいでしょう。

以下でフォント関連のファイルの生成方法、インストール方法を解説します。

*コピー [#b362a0d0]

CD-ROM 内の WINPS/SERIF/BASKERVILE/ 以下に3種類のファイルがあります。そのうち
CD-ROM 内の WINPS/SERIF/BASKERVILLE/ 以下に3種類のファイルがあります。そのうち

-''.PFB''
-''.PFM''

のファイルを作業用のディレクトリにコピーします。

*ファイル名の変更 [#hc25bea9]

作業用ディレクトリには以下のファイルがコピーされているはずです。

-''0031A___.PFB''
-''0031A___.PFM''
-''0032A___.PFB''
-''0032A___.PFM''
-''0033A___.PFB''
-''0033A___.PFM''
-''0034A___.PFB''
-''0034A___.PFM''

これらのファイルの名前を Berry 則にもとづいて変更します。Berry 則については次のページを参考にしてください。

-[[フォント名>TeX/Font/FontName]]
-[[Bitstream>TeX/Font/Type1/Bitstream]]

**フォントファミリ名の決定 [#k5b05a21]

次のことから、このフォントのファミリ名は `bbv' と決まります。

+Bitstream 社製のフォントなので、ベンダ名は `b'(supplier.map 参照)
+Baskerville フォントの略号は `bv'(typeface.map 参照)

**新ファイル名の決定 [#o0fc91df]

以上から新ファイル名を決定します。Type 1(''.pfb'' ファイル)フォントなので、エンコーディングは ''8a'' です。新ファイル名は全て小文字にしておきましょう。

|~元ファイル名|~フォント名|~新ファイル名|
|~0031A___.PFB|Baskerville Roman|bbvr8a.pfb|
|~0032A___.PFB|Baskerville Italic|bbvri8a.pfb|
|~0033A___.PFB|Baskerville Bold|bbvb8a.pfb|
|~0034A___.PFB|Baskerville Bold Italic|bbvbi8a.pfb|

''.PFM'' ファイルも同様にファイル名を変更しておきます。

*.afm ファイルの生成 [#q2329ea8]

''pf2afm'' を使って ''.pfb'', ''.pfm'' ファイルから ''.afm'' ファイルを生成します。''type1afm'' を使ってもよいですが、今回の場合、''pf2afm'' で作ったものよりも情報が少なくなっていました。

''pf2afm'', ''type1afm'' については [[Type 1 フォント>TeX/Font/Type1]] をご覧ください。

**pf2afm の実行 [#x8805a1f]

次のように実行します。

 $ pf2afm bbvr8a.pfb

次のようにすれば、上のコマンドを4回実行する必要がなくなります。

 $ for i in *.pfb; do pf2afm $i; done

**.afm ファイルの修正 [#fec8a973]

今扱っている ''.pfb'' ファイルには fi や fl の合字(リガチャ)が用意されていますが、''.afm'' ファイルからは欠落しています。これを手動で追加します。

それぞれの ''.afm'' ファイルから、`N f' と書かれている行を探します。たとえば

 C 102 ; WX 322 ; N f ; B 27 -2 429 711 ;

という行です。この行の最後に

   L i fi ; L l fl ;

を追加して次のようにします。

 C 102 ; WX 322 ; N f ; B 27 -2 429 711 ; L i fi ; L l fl ;

これは、`f' の文字に関して、リガチャ(Ligature)を `i' と `l' の組合せに対して行う、という意味です。

4つの ''.afm'' ファイルに対して修正を行ったら、忘れずに保存しておきます。

*fontinst [#ua855a32]

**fontinst ファイルの作成 [#ee92eadc]

''.tfm'', ''.fd'', ''.vf'', ''.map'' ファイルを生成するための fontinst のファイルを作成します。ファイル名は `bbv-driver.tex' としておきます。fontinst については [[fontinst パッケージ>TeX/Font/FontInst]] をご覧ください。

 \input fontinst.sty
 \substitutesilent{bx}{b}
 \setint{smallcapsscale}{720}
 \setint{slant}{167}
 \recordtransforms{bbv-rec.tex}
 %% make .tfms
 \transformfont{bbvr8r}{\reencodefont{8r}{\fromafm{bbvr8a}}}
 \transformfont{bbvri8r}{\reencodefont{8r}{\fromafm{bbvri8a}}}
 \transformfont{bbvb8r}{\reencodefont{8r}{\fromafm{bbvb8a}}}
 \transformfont{bbvbi8r}{\reencodefont{8r}{\fromafm{bbvbi8a}}}
 % slant
 \transformfont{bbvro8r}{\slantfont{\int{slant}}\reencodefont{8r}{\fromafm{bbvr8a}}}
 \transformfont{bbvbo8r}{\slantfont{\int{slant}}\reencodefont{8r}{\fromafm{bbvb8a}}}
 %% installfonts (T1)
 \installfonts
 \installfamily{T1}{bbv}{}
 \installfont{bbvr8t}{bbvr8r,newlatin}{t1}{T1}{bbv}{m}{n}{}
 \installfont{bbvrc8t}{bbvr8r,newlatin}{t1c}{T1}{bbv}{m}{sc}{}
 \installfont{bbvro8t}{bbvro8r,newlatin}{t1}{T1}{bbv}{m}{sl}{}
 \installfont{bbvri8t}{bbvri8r,newlatin}{t1}{T1}{bbv}{m}{it}{}
 \installfont{bbvb8t}{bbvb8r,newlatin}{t1}{T1}{bbv}{b}{n}{}
 \installfont{bbvbc8t}{bbvb8r,newlatin}{t1c}{T1}{bbv}{b}{sc}{}
 \installfont{bbvbo8t}{bbvbo8r,newlatin}{t1}{T1}{bbv}{b}{sl}{}
 \installfont{bbvbi8t}{bbvbi8r,newlatin}{t1}{T1}{bbv}{b}{it}{}
 \endinstallfonts
 %% installfonts (TS1)
 \installfonts
 \installfamily{TS1}{bbv}{}
 \installfont{bbvr8c}{bbvr8r,textcomp}{ts1}{TS1}{bbv}{m}{n}{}
 \installfontas{bbvr8c}{TS1}{bbv}{m}{sc}{}
 \installfont{bbvro8c}{bbvro8r,textcomp}{ts1}{TS1}{bbv}{m}{sl}{}
 \installfont{bbvri8c}{bbvri8r,textcomp}{ts1}{TS1}{bbv}{m}{it}{}
 \installfont{bbvb8c}{bbvb8r,textcomp}{ts1}{TS1}{bbv}{b}{n}{}
 \installfontas{bbvb8c}{TS1}{bbv}{b}{sc}{}
 \installfont{bbvbo8c}{bbvbo8r,textcomp}{ts1}{TS1}{bbv}{b}{sl}{}
 \installfont{bbvbi8c}{bbvbi8r,textcomp}{ts1}{TS1}{bbv}{b}{it}{}
 \endinstallfonts
 \endrecordtransforms
 \bye

上の作業で、次のシリーズ・シェイプが使えるようになります。

-ローマン体
--直立体(upright)
--スモールキャップ体(small cap)
--斜体(slant)
--イタリック(italic)
-ボールド体
--直立体(upright)
--スモールキャップ体(small cap)
--斜体(slant)
--イタリック(italic)

スモールキャップ体(small cap)と斜体(slant)はもともとありませんでしたが、これらは直立体から機械的に生成します。

**.map ファイル生成用ファイルの作成 [#yefb1678]

''.map'' ファイル作成に必要な情報は、''bbv-driver.tex'' を処理した後、''bbv-rec.tex'' ファイルに記録されます。これを処理して ''.map'' ファイルを生成するためのファイルを作成します。ファイル名は ''bbv-map.tex'' としておきます。

 \input finstmsc.sty
 \resetstr{PSfontsuffix}{.pfb}
 \adddriver{dvips}{bbv.map}
 \input bbv-rec.tex
 \donedrivers
 \bye

**fontinst の実行 [#p2230b9a]

次のコマンドを実行します。

 $ tex bbv-driver.tex
 $ tex bbv-map.tex

**.tfm, .vf ファイルの生成 [#uad58736]

fontinst を実行すると各種 ''.pl'', ''.vpl'' ファイルができていますので、これらを変換して ''.tfm'', ''.vf'' ファイルを生成します。

 $ for i in *.pl; do pltotf $i; done
 $ for i in *.vpl; do vptovf $i; done

*ファイルのコピー [#ic5aa6e9]

それぞれのファイルをコピーします。

|~ファイルの種類|~コピー先|
|~.afm|$TEXMFLOCAL/fonts/afm/bitstrea/baskerville|
|~.tfm|$TEXMFLOCAL/fonts/tfm/bitstrea/baskerville|
|~.vf|$TEXMFLOCAL/fonts/vf/bitstrea/baskerville|
|~.pfb|$TEXMFLOCAL/fonts/type1/bitstrea/baskerville|
|~.map|$TEXMFLOCAL/fonts/map/dvips/bitstrea/baskerville|
|~.fd|$TEXMFLOCAL/tex/latex/bitstrea/baskerville|

**mktexlsr, updmap-sys [#e403a1b8]

mktexlsr と updmap-sys を実行します。

 # mktexlsr
 # updmap-sys --enable Map=bbv.map

*テスト [#mb972937]

-[[フォント出力のテスト>TeX/Font/FontTest]]

を参考にテストしてみてください。

*.sty の作成 [#bfd63816]

テストがうまくいったら、Baskerville フォントを簡単に使えるように ''bbaskerv.sty'' を作成しましょう。

 \NeedsTeXFormat{LaTeX2e}
 \ProvidesPackage{bbaskerv}[2006/10/02 v1.0 Bitstream Baskerville]
 \RequirePackage[T1]{fontenc}
 \RequirePackage{textcomp}
 \renewcommand*{\rmdefault}{bbv}
 \endinput

これを $TEXMFLOCAL/tex/latex/bitstrea/baskerville にコピーし、''mktexlsr'' を実行しておきます。これ以降はプリアンブルに

 \usepackage{bbaskerv}

と書いておけば、標準のフォントファミリが Baskerville になります。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS