GDEF テーブル
「GDEF テーブル」には、グリフのクラス分けの定義や、合字のカーソル位置の情報などが格納されています。
グリフの分類に関しては、GSUB・GPOS テーブルで使われます。
対象となるグリフを検索する際に、合字やマークグリフなどの、指定されたグリフタイプを無視することができます。
ただ、GDEF テーブルを格納しているフォントは少なく、日本語フォントではあまり意味のないデータなので、それほど重要性はありません。
軽くデータ構造だけ解説しておきます。
GlyphClassDef | グリフを4種類に分類 |
---|---|
AttachmentList | 接続ポイントの情報 |
LigatureCaretList | 合字のカーソル位置 |
MarkAttachClassDef | マークグリフの分類 |
MarkGlyphSets | MarkAttachClassDef の拡張。 グリフセットによって、マークグリフをフィルタリングする。 |
ItemVariationStore | 可変フォント用 |
グリフの分類に関しては、GSUB・GPOS テーブルで使われます。
対象となるグリフを検索する際に、合字やマークグリフなどの、指定されたグリフタイプを無視することができます。
ただ、GDEF テーブルを格納しているフォントは少なく、日本語フォントではあまり意味のないデータなので、それほど重要性はありません。
軽くデータ構造だけ解説しておきます。
テーブルデータ
uint16 | メジャーバージョン = 1 |
---|---|
uint16 | マイナーバージョン = 0, 2, 3 |
Offset16 glyphClassDefOffset | GlyphClassDef テーブルへのオフセット位置。 (GDEF テーブルの先頭を 0 とする) 0 の場合あり。 |
Offset16 attachListOffset | AttachmentList テーブルへのオフセット位置 |
Offset16 ligCaretListOffset | LigatureCaretList テーブルへのオフセット位置 |
Offset16 markAttachClassDefOffset | MarkAttachClassDef テーブルへのオフセット位置 |
ver 1.2 の場合、以下が続く | |
Offset16 markGlyphSetsDefOffset | MarkGlyphSets テーブルへのオフセット位置 |
ver 1.3 の場合、以下が続く | |
Offset32 itemVarStoreOffset | ItemVariationStore テーブルへのオフセット位置 |
Glyph Class Definition
GSUB/GPOS で使われる「グリフクラス」を定義します。
ここで定義されていないグリフは、全て「クラス = 0」となります。
▼ クラス値
ここで定義されていないグリフは、全て「クラス = 0」となります。
▼ クラス値
1 | ベースグリフ。単一文字 |
---|---|
2 | 合字グリフ。複数文字 |
3 | マークグリフ。結合文字 |
4 | 複合グリフ。単一文字の一部 |