AndroidのTypeface.createFromFileでフォントが開けない。
androidでうまく、フォントが開けない。
typefaceのリターンは、うまく開けなくても、
NULLにはならないようだ。
どうやって、開けないことを確認するんだろう???
naitive_instanveが0のときは、開けていないということがわかった。
//Typeface face0 = Typeface.createFromAsset(this.getAssets(), "fonts/font.TTF"); // NG
//Typeface face0 = Typeface.createFromAsset(this.getAssets(), "fonts/font.ttf"); // NG
this.face0 = Typeface.createFromFile("/sdcard/aaa/type0.ttf");
this.face1 = Typeface.createFromFile("/sdcard/type0.ttf");
this.face2 = Typeface.create(Typeface.SERIF, Typeface.NORMAL);
assetsフォルダのすぐ下にしたところ、開けるようになった。
Typeface face0 = Typeface.createFromAsset(this.getAssets(),"font.ttf");
しかし、ファイルが大きいようだ。
シュミレーター2.0.1でやると
DEBUG/asset(4368): Data exceeds UNCOMPRESS_DATA_MAX (3396152 vs 1048576)
のエラーメッセージが出ていた。
(Xperiaだと、なにもログにでない。)
この2パターンは、Xperiaでも開けた。
File file = Environment.getExternalStorageDirectory();
String filename = Environment.getExternalStorageDirectory() + "/type.ttf";
this.typeface0 = Typeface.createFromFile(filename);String filename1 = "/sdcard/type.ttf";
this.typeface1 = Typeface.createFromFile(filename1);this.typeface2 = Typeface.createFromFile("/sdcard/type.ttf");
あれ3パターン目も開けるようになった。
type0.ttfをtype.ttfにしたからかな?