我的Android应用程序需要支持各种语言(如中文等)。其中大多数都在Ascender的DroidSansFallback.ttf文件中。
请参阅https://android.googlesource.com/platform/frameworks/base/+/master/data/fonts
在某些Android手机上,有DroidSansFallback.ttf,但丢失了许多字形,例如:在美国发行的NexusOne上。根本没有亚洲字体字形,大多数只有拉丁字母和相关字符。
那该怎么办?
我在“assets”中添加了我自己的DroidSansFallback.ttf副本(我也尝试过其他来源的其他字体)并在运行时使用Typeface Class设置它。
对于一些手机和一些.ttf文件,字体渲染完全搞砸了,意味着字母只是一行中的一些点。
经过深入分析后,问题归结为:
这里有什么不对?我错过了什么吗?看起来所有安装/使用的字体一起不能大于somehwat~4MB。
任何人都遇到过同样的问题?我在NexusOne(2.1),HTC Hero(2.1),SonyEricson Xperia(1.6)和Motorola MileStone(2.0)上尝试过,都表现出同样的行为。
感谢任何提示。
答案 0 :(得分:0)
您设备上的内存不足。
您列出的所有设备都很旧。这些堆的大小约为12MB。
如果可能,请考虑使用已预先渲染中文文本的PNG。