システムフォントに、"モリサワ 新ゴ R"とかを選択できる003SHなんだけど、このフォント、/system/fontsに存在しないデザインになってる。なんで、どこにフォントがあるか調べてみた。
Androidのソースから見ると、DalvikのFramework内でフォントリストを持っているのではなくて、Skiaのところでリストを持ってる (だからTypefaceでフォントリストとかを持ってない)。だから、Skiaを見れば、どうフォントを読んでいるかはわかるわけだ。
と言いたいところなんだけど、Apacheライセンスなんで変更差分は分からないわけだけど、まぁ、そんなんは難読化する訳でもないから、バイナリをダンプしたところ、以下のパスにフォントを持っている。
フォント名 | フォントパス |
---|---|
LC太明朝 | /system/etc/tmp/V20L5b42M84nB |
SH_Mincho-P | /system/etc/tmp/V20b4J24M84nR |
SH_Crystal-P | /system/etc/tmp/c22b11O14C92rR |
モリサワ 新ゴ R | /system/etc/tmp/c30c1d24G94oR |
フォント一覧がほしければ、Skia使わないと各デバイスで互換性がとれないってことですか。ださっ
0 件のコメント:
コメントを投稿