1

私のパーサーは、pdf ファイルの解析中に、TrueType に設定されたフォント ディクショナリの SubType エントリの値を持つ Tf 演算子に遭遇します。Encoding エントリが存在せず、symblic フラグが設定されています。

私の質問は、文字コードをエンコーディングなしの文字にどのようにマップすると思いますか?

PDF リファレンスセクション 5.5.5 Character Encoding には、TrueType フォントには、フォント ファイル内のテーブルで表される内部データがあると記載されています。これらの表は、文字コードのマッピングに役立つようです。私はそれを正しく理解していますか?フォントファイルからこれらの情報を抽出するにはどうすればよいですか?

PDFから抽出されたフォントファイルは次のようなものを与えました: 16 進エディタで表示されたフォント ファイル

Apple のドキュメントThe True Type Font Fileを読みましたが、これらのテーブルからそれらの情報を抽出する方法がわかりません。

ヘルプ、リンク、または読書の提案は大歓迎です。

4

2 に答える 2

1

Symblic フラグは、エンコーディングが [0..255] の範囲に設定されていることを意味します。すべての文字コードがこの範囲内にある必要があります。フォントは、これらのコードのグリフのみを表示します。

TrueType および OpenType フォント形式に関する優れたリソース セットを次に示します。

于 2012-09-28T21:44:21.450 に答える
0

フリータイプライブラリ関数FT_Get_Char_Indexを使用して、文字コードからグリフインデックスに移動できます。FT_Get_Char_Indexを参照してください

FT_Faceを最初に取得するには、TrueTypeフォントをファイルにダンプし、FreeTypeでロードする必要があります。

于 2012-10-22T10:07:03.657 に答える