アプリで「ͿͿͿͿͿ」のような文字化けを見たことがありますか?
これは、表示するべきだった文字列が、開発者やシステムが選んだフォントファイルにありません、ということです。「トーフ型の文字化け」、または「豆腐化け」や「豆腐化」とたまに言われてます。普通の文字化けと違って、文字コードの問題ではなく、フォント選択の問題です。
あなたのパソコンでも、こういう問題が起こるはずです。例えば、このページはちゃんと表示されていますか?(ビルマ語、ミャンマー、話者4千万人以上)
OSによってはフォント・フォールバックという仕組みを使える場合がありますが、アンドロイドの場合などは埋め込まれたフォントを使うとフォント・フォールバックできません。
例えば、フォントが「TibetanDDC.ttf」なら、アラビア語は表示されません。開発者は「誰もアラビア語のコンテンツを読まないだろう!」と考えたかもしれませんが、そうとは限りませんよ。
というわけで、最適なフォントを選んでくれるライブラリ「Antisquare」を作りました。
呼び出し例:Antisquare.getSuitableFonts('ណ')
戻り値:"KhmerOS.ttf"
速いです(1ミリ秒の間に2万回も呼ぶことができるほどです)。
Javaで作りました。
オープンソースにしたので、是非使ってみてください!
Nicolas Raoul
No comments:
Post a Comment