TeX/Font/Type1/Bitstream/CaslonOldFace
の編集
https://museion.sakura.ne.jp/wiki/?TeX/Font/Type1/Bitstream/CaslonOldFace
[
トップ
] [
編集
|
差分
|
履歴
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
-- 雛形とするページ --
(no template pages)
[[TeX/Font/Type1/Bitstream]] *Caslon Old Face [#jd6fdcff] *コピー [#k6ab1064] CD-ROM 内の WINPS/SERIF/CASLON_OLD_FACE/ 以下に3種類のファイルがあります。そのうち -''.PFB'' -''.PFM'' のファイルを作業用のディレクトリにコピーします。 *ファイル名の変更 [#b159c153] これらのファイルの名前を Berry 則にもとづいて変更すればいいのですが、`Old Face' を表す記号がないので困ります。$TEXMFDIST/fonts/map/fontname/bitstrea.map にある変換表にも次のように書かれていて、どのように変更したらいいのかわかりません。 b____ CaslonOldFaceBT-Roman BT 0280 casolfcn b____ CaslonOldFaceBT-Italic BT 0281 casolfci b_____ CaslonOldFaceBT-Heavy BT 0342 casolfch ここでは、`Caslon' を表すために `ca' を、`Old Face' を表すために `f' を用いることにします。 |~元ファイル名|~フォント名|~新ファイル名| |~0280A___.PFB|Caslon Old Face Roman|bcarf8a.pfb| |~0281A___.PFB|Caslon Old Face Roman Italic|bcarif8a.pfb| |~0242A___.PFB|Caslon Old Face Roman Heavy|bcahf8a.pfb| ''.PFM'' ファイルも同様にファイル名を変更しておきます。 *.afm ファイルの生成 [#ta260ff7] ''pf2afm'' を使って ''.pfb'', ''.pfm'' ファイルから ''.afm'' ファイルを生成します。 **pf2afm の実行 [#i89969b0] 次のように実行します。 $ pf2afm bbvr8a.pfb 次のようにすれば、上のコマンドを4回実行する必要がなくなります。 $ for i in *.pfb; do pf2afm $i; done **.afm ファイルの修正 [#cba4ec82] 今扱っている ''.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 [#p53d1f9e] ''.tfm'', ''.fd'', ''.vf'', ''.map'' ファイルを生成するための fontinst のファイルを作成します。ファイル名は `bcaof-driver.tex' としておきます。fontinst については [[fontinst パッケージ>TeX/Font/FontInst]] をご覧ください。 \input fontinst.sty \needsfontinstversion{1.926} \substitutesilent{bx}{b} \setint{smallcapsscale}{720} \setint{slant}{167} \recordtransforms{bcaof-rec.tex} %% make .tfms \transformfont{bcarf8r}{\reencodefont{8r}{\fromafm{bcarf8a}}} \transformfont{bcarif8r}{\reencodefont{8r}{\fromafm{bcarif8a}}} \transformfont{bcahf8r}{\reencodefont{8r}{\fromafm{bcahf8a}}} % slant \transformfont{bcarof8r}{\slantfont{\int{slant}}\reencodefont{8r}{\fromafm{bcarf8a}}} \transformfont{bcahof8r}{\slantfont{\int{slant}}\reencodefont{8r}{\fromafm{bcahf8a}}} %% installfonts (T1) \installfonts \installfamily{T1}{bcaof}{} \installfont{bcarf8t}{bcarf8r,newlatin}{t1}{T1}{bcaof}{m}{n}{} \installfont{bcarcf8t}{bcarf8r,newlatin}{t1c}{T1}{bcaof}{m}{sc}{} \installfont{bcarof8t}{bcarof8r,newlatin}{t1}{T1}{bcaof}{m}{sl}{} \installfont{bcarif8t}{bcarif8r,newlatin}{t1}{T1}{bcaof}{m}{it}{} \installfont{bcahf8t}{bcahf8r,newlatin}{t1}{T1}{bcaof}{b}{n}{} \installfont{bcahcf8t}{bcahf8r,newlatin}{t1c}{T1}{bcaof}{b}{sc}{} \installfont{bcahof8t}{bcahof8r,newlatin}{t1}{T1}{bcaof}{b}{sl}{} \installfontas{bcahof8t}{T1}{bcaof}{b}{it}{} \endinstallfonts %% installfonts (TS1) \installfonts \installfamily{TS1}{bcaof}{} \installfont{bcarf8c}{bcarf8r,textcomp}{ts1}{TS1}{bcaof}{m}{n}{} \installfontas{bcarf8c}{TS1}{bcaof}{m}{sc}{} \installfont{bcarof8c}{bcarof8r,textcomp}{ts1}{TS1}{bcaof}{m}{sl}{} \installfont{bcarif8c}{bcarif8r,textcomp}{ts1}{TS1}{bcaof}{m}{it}{} \installfont{bcahf8c}{bcahf8r,textcomp}{ts1}{TS1}{bcaof}{b}{n}{} \installfontas{bcahf8c}{TS1}{bcaof}{b}{sc}{} \installfont{bcahof8c}{bcahof8r,textcomp}{ts1}{TS1}{bcaof}{b}{sl}{} \installfontas{bcahof8c}{TS1}{bcaof}{b}{it}{} \endinstallfonts \endrecordtransforms \bye 上の作業で、次のシリーズ・シェイプが使えるようになります。 -ローマン体 --直立体(upright) --スモールキャップ体(small cap) --斜体(slant) --イタリック(italic) -ボールド体 --直立体(upright) --スモールキャップ体(small cap) --斜体(slant) --(イタリック) スモールキャップ体(small cap)と斜体(slant)はもともとありませんでしたが、これらは直立体から機械的に生成します。 問題はボールド体イタリックです。もともとボールド体イタリックフォントは提供されていませんので、ボールド体斜体(slant)で代用しています。 **.map ファイル生成用ファイルの作成 [#o818b0bf] ''.map'' ファイル作成に必要な情報は、''bcaof-driver.tex'' を処理した後、''bcaof-rec.tex'' ファイルに記録されます。これを処理して ''.map'' ファイルを生成するためのファイルを作成します。ファイル名は ''bcaof-map.tex'' としておきます。 \input finstmsc.sty \resetstr{PSfontsuffix}{.pfb} \adddriver{dvips}{bcaof.map} \input bcaof-rec.tex \donedrivers \bye **fontinst の実行 [#hf4c5177] 次のコマンドを実行します。 $ tex bcaof-driver.tex $ tex bcaof-map.tex **.tfm, .vf ファイルの生成 [#fd87a192] fontinst を実行すると各種 ''.pl'', ''.vpl'' ファイルができていますので、これらを変換して ''.tfm'', ''.vf'' ファイルを生成します。 $ for i in *.pl; do pltotf $i; done $ for i in *.vpl; do vptovf $i; done *ファイルのコピー [#n2938c80] それぞれのファイルをコピーします。 |~ファイルの種類|~コピー先| |~.afm|$TEXMFLOCAL/fonts/afm/bitstrea/caslonof| |~.tfm|$TEXMFLOCAL/fonts/tfm/bitstrea/caslonof| |~.vf|$TEXMFLOCAL/fonts/vf/bitstrea/caslonof| |~.pfb|$TEXMFLOCAL/fonts/type1/bitstrea/caslonof| |~.map|$TEXMFLOCAL/fonts/map/dvips/bitstrea/caslonof| |~.fd|$TEXMFLOCAL/tex/latex/bitstrea/caslonof| **mktexlsr, updmap-sys [#p6f24309] mktexlsr と updmap-sys を実行します。 # mktexlsr # updmap-sys --enable Map=bcaof.map *テスト [#v9987dfc] -[[フォント出力のテスト>TeX/Font/FontTest]] を参考にテストしてみてください。 *.sty の作成 [#g5822b14] テストがうまくいったら、Caslon Old Face フォントを簡単に使えるように ''bcasof.sty'' を作成しましょう。 \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bcasof}[2006/10/06 v1.0 Bitstream Caslon Old Face] \RequirePackage[T1]{fontenc} \RequirePackage{textcomp} \renewcommand*{\rmdefault}{bcaof} \endinput これを $TEXMFLOCAL/tex/latex/bitstrea/caslonof にコピーし、''mktexlsr'' を実行しておきます。これ以降はプリアンブルに \usepackage{bcasof} と書いておけば、標準のフォントファミリが Caslon Old Face になります。
タイムスタンプを変更しない
[[TeX/Font/Type1/Bitstream]] *Caslon Old Face [#jd6fdcff] *コピー [#k6ab1064] CD-ROM 内の WINPS/SERIF/CASLON_OLD_FACE/ 以下に3種類のファイルがあります。そのうち -''.PFB'' -''.PFM'' のファイルを作業用のディレクトリにコピーします。 *ファイル名の変更 [#b159c153] これらのファイルの名前を Berry 則にもとづいて変更すればいいのですが、`Old Face' を表す記号がないので困ります。$TEXMFDIST/fonts/map/fontname/bitstrea.map にある変換表にも次のように書かれていて、どのように変更したらいいのかわかりません。 b____ CaslonOldFaceBT-Roman BT 0280 casolfcn b____ CaslonOldFaceBT-Italic BT 0281 casolfci b_____ CaslonOldFaceBT-Heavy BT 0342 casolfch ここでは、`Caslon' を表すために `ca' を、`Old Face' を表すために `f' を用いることにします。 |~元ファイル名|~フォント名|~新ファイル名| |~0280A___.PFB|Caslon Old Face Roman|bcarf8a.pfb| |~0281A___.PFB|Caslon Old Face Roman Italic|bcarif8a.pfb| |~0242A___.PFB|Caslon Old Face Roman Heavy|bcahf8a.pfb| ''.PFM'' ファイルも同様にファイル名を変更しておきます。 *.afm ファイルの生成 [#ta260ff7] ''pf2afm'' を使って ''.pfb'', ''.pfm'' ファイルから ''.afm'' ファイルを生成します。 **pf2afm の実行 [#i89969b0] 次のように実行します。 $ pf2afm bbvr8a.pfb 次のようにすれば、上のコマンドを4回実行する必要がなくなります。 $ for i in *.pfb; do pf2afm $i; done **.afm ファイルの修正 [#cba4ec82] 今扱っている ''.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 [#p53d1f9e] ''.tfm'', ''.fd'', ''.vf'', ''.map'' ファイルを生成するための fontinst のファイルを作成します。ファイル名は `bcaof-driver.tex' としておきます。fontinst については [[fontinst パッケージ>TeX/Font/FontInst]] をご覧ください。 \input fontinst.sty \needsfontinstversion{1.926} \substitutesilent{bx}{b} \setint{smallcapsscale}{720} \setint{slant}{167} \recordtransforms{bcaof-rec.tex} %% make .tfms \transformfont{bcarf8r}{\reencodefont{8r}{\fromafm{bcarf8a}}} \transformfont{bcarif8r}{\reencodefont{8r}{\fromafm{bcarif8a}}} \transformfont{bcahf8r}{\reencodefont{8r}{\fromafm{bcahf8a}}} % slant \transformfont{bcarof8r}{\slantfont{\int{slant}}\reencodefont{8r}{\fromafm{bcarf8a}}} \transformfont{bcahof8r}{\slantfont{\int{slant}}\reencodefont{8r}{\fromafm{bcahf8a}}} %% installfonts (T1) \installfonts \installfamily{T1}{bcaof}{} \installfont{bcarf8t}{bcarf8r,newlatin}{t1}{T1}{bcaof}{m}{n}{} \installfont{bcarcf8t}{bcarf8r,newlatin}{t1c}{T1}{bcaof}{m}{sc}{} \installfont{bcarof8t}{bcarof8r,newlatin}{t1}{T1}{bcaof}{m}{sl}{} \installfont{bcarif8t}{bcarif8r,newlatin}{t1}{T1}{bcaof}{m}{it}{} \installfont{bcahf8t}{bcahf8r,newlatin}{t1}{T1}{bcaof}{b}{n}{} \installfont{bcahcf8t}{bcahf8r,newlatin}{t1c}{T1}{bcaof}{b}{sc}{} \installfont{bcahof8t}{bcahof8r,newlatin}{t1}{T1}{bcaof}{b}{sl}{} \installfontas{bcahof8t}{T1}{bcaof}{b}{it}{} \endinstallfonts %% installfonts (TS1) \installfonts \installfamily{TS1}{bcaof}{} \installfont{bcarf8c}{bcarf8r,textcomp}{ts1}{TS1}{bcaof}{m}{n}{} \installfontas{bcarf8c}{TS1}{bcaof}{m}{sc}{} \installfont{bcarof8c}{bcarof8r,textcomp}{ts1}{TS1}{bcaof}{m}{sl}{} \installfont{bcarif8c}{bcarif8r,textcomp}{ts1}{TS1}{bcaof}{m}{it}{} \installfont{bcahf8c}{bcahf8r,textcomp}{ts1}{TS1}{bcaof}{b}{n}{} \installfontas{bcahf8c}{TS1}{bcaof}{b}{sc}{} \installfont{bcahof8c}{bcahof8r,textcomp}{ts1}{TS1}{bcaof}{b}{sl}{} \installfontas{bcahof8c}{TS1}{bcaof}{b}{it}{} \endinstallfonts \endrecordtransforms \bye 上の作業で、次のシリーズ・シェイプが使えるようになります。 -ローマン体 --直立体(upright) --スモールキャップ体(small cap) --斜体(slant) --イタリック(italic) -ボールド体 --直立体(upright) --スモールキャップ体(small cap) --斜体(slant) --(イタリック) スモールキャップ体(small cap)と斜体(slant)はもともとありませんでしたが、これらは直立体から機械的に生成します。 問題はボールド体イタリックです。もともとボールド体イタリックフォントは提供されていませんので、ボールド体斜体(slant)で代用しています。 **.map ファイル生成用ファイルの作成 [#o818b0bf] ''.map'' ファイル作成に必要な情報は、''bcaof-driver.tex'' を処理した後、''bcaof-rec.tex'' ファイルに記録されます。これを処理して ''.map'' ファイルを生成するためのファイルを作成します。ファイル名は ''bcaof-map.tex'' としておきます。 \input finstmsc.sty \resetstr{PSfontsuffix}{.pfb} \adddriver{dvips}{bcaof.map} \input bcaof-rec.tex \donedrivers \bye **fontinst の実行 [#hf4c5177] 次のコマンドを実行します。 $ tex bcaof-driver.tex $ tex bcaof-map.tex **.tfm, .vf ファイルの生成 [#fd87a192] fontinst を実行すると各種 ''.pl'', ''.vpl'' ファイルができていますので、これらを変換して ''.tfm'', ''.vf'' ファイルを生成します。 $ for i in *.pl; do pltotf $i; done $ for i in *.vpl; do vptovf $i; done *ファイルのコピー [#n2938c80] それぞれのファイルをコピーします。 |~ファイルの種類|~コピー先| |~.afm|$TEXMFLOCAL/fonts/afm/bitstrea/caslonof| |~.tfm|$TEXMFLOCAL/fonts/tfm/bitstrea/caslonof| |~.vf|$TEXMFLOCAL/fonts/vf/bitstrea/caslonof| |~.pfb|$TEXMFLOCAL/fonts/type1/bitstrea/caslonof| |~.map|$TEXMFLOCAL/fonts/map/dvips/bitstrea/caslonof| |~.fd|$TEXMFLOCAL/tex/latex/bitstrea/caslonof| **mktexlsr, updmap-sys [#p6f24309] mktexlsr と updmap-sys を実行します。 # mktexlsr # updmap-sys --enable Map=bcaof.map *テスト [#v9987dfc] -[[フォント出力のテスト>TeX/Font/FontTest]] を参考にテストしてみてください。 *.sty の作成 [#g5822b14] テストがうまくいったら、Caslon Old Face フォントを簡単に使えるように ''bcasof.sty'' を作成しましょう。 \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bcasof}[2006/10/06 v1.0 Bitstream Caslon Old Face] \RequirePackage[T1]{fontenc} \RequirePackage{textcomp} \renewcommand*{\rmdefault}{bcaof} \endinput これを $TEXMFLOCAL/tex/latex/bitstrea/caslonof にコピーし、''mktexlsr'' を実行しておきます。これ以降はプリアンブルに \usepackage{bcasof} と書いておけば、標準のフォントファミリが Caslon Old Face になります。
テキスト整形のルールを表示する