# FontForge がサポートする TrueType および OpenType のテーブル

Apple, MS および Adobe はすべて TrueType や OpenType の解説文書を公開しています。MS と Adobe の版は本質的に同じですが、Apple の版はそれらとは明白な差異があります。

名前 | 長い名前 | FontForge の用法 | Apple の 文書 | Adobe の 文書
--- | --- | --- | --- | ---
avar | 軸のバリエーション | 変形可能フォントの軸の、部分毎に線形な区分けを指定するのに用います。 | avar | *
bdat | ビットマップデータ | Apple のフォントにおいては、すべてのビットマップグリフの実際のビットマップデータを提供します。MS/Adobe では、この代わりに‘EBDT’を使用します (フォーマットはこれと同じです) | bdat | *
bhed | ビットマップフォントのヘッダ | Apple のビットマップのみのフォントでは、‘head’の代わりに使用します (‘head’と同形式です) | bhed | *
bloc | ビットマップの位置データ | Apple のフォントにおいては、各ビットマップグリフに該当するビットマップデータへのポインタを提供します。MS/Adobe では、この代わりに‘EBLC’を使用します (フォーマットはこれと同じです) | bloc | *
CFF | コンパクトフォントフォーマット | OpenType フォントの中核となる PostScript Type2 フォントのすべてのアウトラインデータ (それに加えてグリフ名も) を提供します。大雑把に言えば、‘glyf’,‘loca’および‘post’を組み合わせた物と同等と言えます。 | * | CFF
cmap | 文字コードとの対応 | バイトのストリームからフォント内のグリフへの対応づけを行うエンコーディングを少なくとも 1 個は提供します。FontForge は、各フォントに対して最低 3 個のエンコーディング (1 個は Mac Roman, 1 個は Mac Unicode, もう 1 個は MS Unicode です) を提供します。いくつかのフォントでは、CJK エンコーディング (Big5, SJIS など) または BMP に収まらないコードポイントをカバーする拡張 Unicode エンコーディングも提供します。 特殊な1バイトエンコーディング (Symbol など) をもつフォントに対しては、社用領域の基地の領域を各グリフに割り当てる“Symbol”エンコーディングを提供します。 | cmap | cmap
cvar | cvt テーブルに対するバリエーション | 変形可能フォントにおけるヒントの差分情報を提供します。 | cvar | *
cvt | 制御値テーブル (control value table) | FontForge は、TrueType フォントにヒントづけを行おうとするときにこれを使用します (フォントからこれを読み込み、保存時に再び書き出します)。 | cvt | cvt
EBDT | 埋め込みビットマップデータ | MS/Adobe のフォントですべてのビットマップグリフの実際のビットマップデータを提供します。Apple では代わりに‘bdat’が用いられます (フォーマットは同じです) | * | EBDT
EBLC | 埋め込みビットマップ位置 | MS/Adobe のフォントで、各ビットマップグリフに該当するビットマップへのポインタを提供します。Apple では代わりに‘bloc’が用いられます (フォーマットは同じです) | * | EBLC
EBSC | 埋め込みビットマップのスケーリング | ビットマップのスケーリングをどのように行うかに関する情報 (それを行うのが望ましい稀な場合) を提供します。FontForge は、Windows 用のビットマップのみのフォントを作成する時にこれを使用します。 | EBSC | EBSC
feat | レイアウト機能テーブル | Apple の‘morx’(または‘mort’) テーブルから、‘name’テーブルが提供している名前への対応づけを行います。FontForge は‘morx’テーブルを生成するときにはこれも生成します。 | feat | *
fpgm | フォントプログラム | FontForge はこれを決して生成しませんが、これを保持してユーザが編集できるようにします。 | fpgm | fpgm
fvar | フォントバリエーション | 変形可能フォントに関するトップレベルの情報を提供します。可能な変形のタイプを指定します。 | fvar | *
gasp | グリッド合わせおよびスキャン変換 | FontForge が TrueType フォントのヒントづけを試みない場合、ラスタライザにグリッド合わせ (ヒント処理) を行わずに、アンチエイリアスを行うように指定します。 | gasp | gasp
GDEF | グリフ定義 | GPOS/GSUB テーブルを使いやすくするために、グリフを多数のクラスに分類します。また、合字内部のキャレット位置も提供します。これは Apple の‘prop’と‘lcar’の両テーブルを合わせたものとほぼ同等です。 | * | GDEF
glyf | グリフアウトライン | TrueType グリフのアウトライン情報を提供します。大雑把に言えば‘CFF ’と同等と言えます。 | glyf | glyf
GPOS | グリフ位置指定 | カーニング情報、マークと基底文字の位置関係などを OpenType フォントに提供します。より詳しい情報については、GPOS に関する章を参照してください。大雑把に言えば‘kern’および‘opbd’と同等と言えます。 | * | GPOS
GSUB | グリフ置換 | 合字やスワッシュ文字などに関する情報を OpenType フォントに提供します。より詳しい情報については、GSUB に関する章を参照してください。大雑把に言えば、‘morx’と同等と言えます。 | * | GSUB
gvar | グリフバリエーション | このテーブルは変形可能フォントの中身を含んでいます。各グリフをどのように変形することができるかを指定します。 | gvar | *
head | フォントヘッダ | em 正方形のサイズ、タイムスタンプ、チェックサム情報などの一般的なフォント情報を含みます | head | head
hhea | 横書きヘッダ | このテーブルはフォントの全般的な水平メトリック情報を含みます。 | hhea | hhea
hmtx | 横書きメトリック | これには各グリフの水平方向のメトリックが含まれます。 | hmtx | hmtx
kern | カーニング | Apple の TrueType フォント (および、MS の旧式の TrueType フォント) にカーニング情報を提供します。OpenType フォントでは、この情報は GPOS テーブルに入っています。 | kern | kern
lcar | 合字キャレット | このテーブルは、Apple の TrueType フォントに合字内部のキャレット位置を提供します。OpenType フォントでは、この情報は GDEF テーブルに入っています。 | lcar | *
loca | グリフ位置 | このテーブルは、フォントファイルが含む各グリフの‘glyf’テーブル内へのポインタを提供します。TrueType では必須であり、OpenType では無意味です (その情報と同じような情報は CFF テーブル内部で提供されています)。 | loca | loca
maxp | 最大プロファイル | フォントに関する一般的な“最大値”情報を提供します。こねには、フォント内のグリフの最大個数・グリフ内の点の最大個数・グリフ内の参照の最大個数などが含まれます。 | maxp | maxp
mort | メタモルフォーゼ | FontForge はこのテーブルを読み込みますが、けっして出力することはありません。このテーブルの代わりに‘morx’テーブルを用いることになったので、そちらの方をこの代わりに出力します。大雑把に言えば、これは GSUB テーブルと等価です。 | mort | *
morx | 拡張メタモルフォーゼ | Apple 形式の TrueType フォントで合字、スワッシュ文字などに関する情報を提供します。FontForge はこのテーブルの読み書きができます。より詳しい情報は、FontForge の morx に関する章を参照してください。大雑把に言えば、‘GSUB’と等価です。 | morx | *
name | 名前 | フォントに関連するいくつかの標準的な文字列 (フォント名、ファミリー名、ライセンスなど) を各種の言語で提供します。Apple 形式のフォントでは‘morx/mort’テーブルの各種の機能の名前も提供します。 | name | name
opbd | 視覚的境界 | このテーブルは、Apple 形式のフォント内のテーブルに含まれる各グリフの視覚的境界情報を提供します。この情報は、OpenType の GPOS テーブルで提供することもできます。 | opbd | *
PfEd | FontForge の私用テーブル | このテーブルは FontForge のみが使用します。ここには FontForge のコメントや色などを含めることができます。このフォーマットの説明は、ここにあります。 | * | *
post | グリフ名および PostScript 互換情報 | このテーブルは、いくつかの追加の PostScript 情報 (イタリックの傾斜角) を提供しますが、全てのグリフの名前を提供するのが主目的です。 | post | post
prep | cvt プログラム | FontForge がこのテーブルを自分自身で出力することは決してありませんが、他のフォントを読み込んだ時にはそれを保持しており、それをユーザが編集することもできます。 | prep | prep
prop | グリフの属性 | Apple フォントで、各グリフの Unicode の属性を提供します。このテーブルは GDEF テーブルとの類似性をいくらか呈しています。 | prop | *
TeX | TeX 情報 | これは FontForge 独自のテーブルで、TeX で使用するための情報を格納します。このフォーマットの解説はここにあります。 | * | *
vhea | 縦書きヘッダ | FontForge は縦書き用のメトリックを持つフォントに対して、このテーブルを生成します。このテーブルはフォントの全般的な垂直メトリック情報を含みます。 | vhea | vhea
vmtx | 縦書きメトリック | FontForge は縦書き用のメトリックを持つフォントに対して、このテーブルを生成します。このテーブルはグリフごとの垂直メトリックを含みます。 | vmtx | vmtx
VORG | 縦書きの原点 | CID キー指定 OpenType フォントに含まれるサブフォントのベースラインの垂直方向の原点を指定します。 | * | VORG

FontForge の高度組版テーブル