私の仕事は、特定の言語 (ロケール) に対応するすべての utf-8 文字コードを反復処理することです。それほど簡単ではないと思います。文字ブロックを反復処理する必要があります (たとえば、"ru_RU" のキリル文字全体など)。wiki ページhttps://en.wikipedia.org/wiki/UTF-8で文字ブロックを見つけることができますが、自分の自転車を発明するよりも良い方法があることを願っています。
icu-project を見てみましたが、必要なことができるかどうかわかりません。
結果として欲しいのは次のようなものです:
for (unsignet int=UBLOCK_GREEK_EXTENDED; i<UBLOCK_GREEK_EXTENDED_SIZE; i++) {
// do stuff
}
icu-project は非常に強力なツールなので、誰かがこれを行う方法を知っていることを願っています :)
更新: モバイル デバイス用の 3D フレームワークのローカリゼーション オプションに取り組んでいます。TrueType フォントをラスタライズしてエンコードするため、ラスタライズされたフォント ファイルから必要な画像を選択して簡単にレンダリングできます。メモリ量を気にする必要があるため、ラスタライズされたフォントをさまざまなロケール (または言語、または cirylic や greek などの文字ブロック) のさまざまなファイルに分割したいので、utf-8 フォント全体をメモリに保持する必要はありません。常に、ロケールを検出した後に対応するファイルのみをロードします。
ありがとう!