AFMTODIT(1)

名称
afmtodit - groff -Tps で用いるフォントファイルを作成する

書式
afmtodit [-mnsv] [-a n] [-d desc_file] [-e enc_file] [-i n] afm_file map_file font

コマンドラインオプションとその引数との間の空白は、省略可能です。

解説
afmtodit は、groff および grops で用いるフォントファイルを作成します。 afmtodit は perl で記述されていますので、これを使用するには perl バージョン 3 以降がインストールされている必要があります。

afm_file は、フォント作成に用いる AFM (Adobe Font Metric) ファイルです。

map_file は、groff 上の文字名と PostScript 上の文字名の対応を定義する ファイルです。このファイルの各行は、下記のフォーマットから成ります。

    ps_char groff_char

ここで、 ps_char はその文字の PostScript 上の名前、 groff_char はその文字の groff 上の名前 (つまり、groff フォントファイルで 使用される名前) です。 map_file 内には同じ ps_char が 2 回以上使用されていてもかまいません。しかし、 同じ groff_char を 2 回以上使用することはできません。 # で開始する行と空行は無視されます。 ファイルがカレントディレクトリに見付からない場合、 デフォルトフォントディレクトリの `devps/generate' サブディレクトリが 検索されます。

もし、 map_file で定義されていない PostScript 文字が このフォントのエンコード方式に含まれていた場合、 または Adobe Glyph List (afmtodit に組み込まれています) を使用しても総称的な groff グリフ名を演繹できない場合、 afmtodit はその文字を名前のない文字として groff フォントファイルに出力します。 名前のない文字を troff 上で扱うには、エスケープシーケンス \N を使用します。 オプション -e が指定されない場合、AFM ファイルで定義されるエンコード (すなわち非負文字コードエントリ) が使用されます。 groff グリフ名がどのように構築されているかを記述している、 groff info ファイルの `Using Symbols' を参照してください。

AFM ファイルでエンコードされない文字 (すなわち文字コードに -1 を持つもの) も groff で使用可能です。 これらは groff フォントファイル中で 255 より大きなグリフインデックスを 持ちます (または、滅多にないことですが、AFM ファイル中の最大文字コード が 255 より大きい場合は、それより大きくなります)。 エンコードされない文字のグリフインデックスには、特別な順番はありません。 グリフ名だけでアクセスするのが最良です。

groff フォントファイルは font という名前のファイルに出力されます。

そのフォントに対するダウンロード可能なフォントがある場合、ファイル /usr/share/groff_font/devps/download に列挙可能です。 grops(1) を参照してください。

-i オプションが指定されていた場合、 afmtodit は各文字についてイタリック補正 (italic correction)、 左イタリック補正 (left italic correction) および 添字補正 (subscript correction) を自動生成します (これら補正パラメータの意味については、 groff_font(5) を参照してください)。 これらのパラメータは、各文字ごとに afm_file に下記の行を追加することにより設定されます。

    italicCorrection ps_char n
    leftItalicCorrection ps_char n
    subscriptCorrection ps_char n

ここで、 ps_char はその文字の PostScript 上の名前、 n はパラメータの値 (1/1000 em 単位) です。 これらのパラメータは、通常はイタリックフォント (または斜体) でのみ必要とされます。

オプション

-an フォントファイル内で、 n を傾斜パラメータとして使用します。 このパラメータは groff がアクセント記号の位置を決定するのに使用されます。 デフォルトの値は、 afm_file の中で指定される ItalicAngle 値に -1 を掛けた値です。 しかし、実際のイタリックフォントではもっと小さな値の方が 望ましいことがあります。 もし、イタリックフォントに付くアクセント記号が 正しい位置から離れすぎていると感じた場合、 -a オプションを使用して、より小さな傾斜パラメータを与えてください。

-ddesc_file
    デバイス記述ファイルをデフォルトの DESC ではなく、 desc_file に指定します。 カレントディレクトリで見付からない場合、 フォントディレクトリの `devps' サブディレクトリが検索されます (デフォルトのデバイス記述ファイルおよび -d オプションで与えられるファイルの両方に、これは有効です)。

-eenc_file
    PostScript フォントが、 enc_file 内に記述されているエンコード方式で再エンコードされるべきことを 指定します。 enc_file のフォーマットは grops(1) を参照してください。 カレントディレクトリで見付からない場合、 フォントディレクトリの `devps' サブディレクトリが検索されます

-in 各文字のイタリック補正を生成します。 文字幅とイタリック補正の和が、 n /1000 em と 「文字のバウンディングボックスの右端が文字の原点からどれだけ右にあるか」 の和に等しくなるように、イタリック補正が生成されます。 負のイタリック補正になってしまう生成結果の場合、 その値の代りに 0 がイタリック補正として使用されます。

    同様に、各文字の添字補正も生成します。 そのフォントの傾斜パラメータの正接 (tangent) に そのフォントの x の高さの 4/5 を掛けた値が、添字補正になります。 添字補正がイタリック補正より大きな値になってしまう生成結果の場合、 その値の代りにイタリック補正の値が添字補正として使用されます。

    同様に、各文字の左イタリック補正も生成します。 左イタリック補正は、 n /1000 em と 「文字のバウンディングボックスの左端が文字の原点からどれだけ左にあるか」 の和に等しくなるように、生成されます。 左イタリック補正は、 -m が与えられない限り、負値になる場合があります。

    このパラメータは、通常はイタリックフォント (または斜体) でのみ必要とされます。 groff と共に配布されるフォントファイルは、 イタリックフォントに -i50 オプションを使用して生成されています。

-m  負値のイタリック補正を防ぎます。 groff と共に配布されているローマンフォントは、 -i0 -m で作成されており、 eqn(1) を用いた場合の間隔を向上しています。 -n このフォントには ligatures コマンド (合字) を出力しません。 等幅フォント使用時に指定してください。

-s  特別フォントであることを指定します。 フォントファイルに special コマンドを追加します。

-v  バージョンを表示します。

関連ファイル
/usr/share/groff_font/devps/DESC デバイス記述ファイル

/usr/share/groff_font/devps/F
    フォント F のフォント記述ファイル

/usr/share/groff_font/devps/download
    ダウンロード可能なフォントの一覧

/usr/share/groff_font/devps/text.enc
    テキストフォントで使用されるエンコード方式

/usr/share/groff_font/devps/generate/textmap
    標準の対応表

関連項目
groff(1), grops(1), groff_font(5), perl(1)

groff info ファイルのセクション `Using Symbols'。