Javascript で TrueType フォントの解析/レンダリング エンジンに取り組んでいます。ソースはここにあります。
私の問題は、space
ほとんどの場合、グリフがloca
ゼロ幅としてテーブルにインデックス付けされていることです。つまり、オフセットでグリフを検索すると、グリフのloca
オフセットが取得されexclam
ます。場所テーブルの仕様は次のように述べています。
欠落している文字のアウトラインがフォントに含まれていない場合、1 番目と 2 番目のオフセットは同じ値にする必要があります。これは、スペース文字など、アウトラインのない他の文字にも当てはまります。グリフにアウトラインがない場合、その長さはゼロでなければなりません。
.notdef
そのため、スペース文字にはアウトラインがないように見えますが、グリフを描画したくありません。グリフのアウトラインが設定されていない場合、何を描画するか (または少なくとも水平方向にオフセットするか) を決定するにはどうすればよいですか?