Android下加载字体出错。提示:Font asset not found xxx.ttf的解决方法

在Android下使用以下方法加载字体文件时,抛出 Font asset not found xxx.ttf 的异常。

Typeface font = Typeface.createFromAsset(getAssets(), "fonts/xxx.ttf");

检查路径发现没有问题,后来查资料得知,是ttf字体文件的问题,我的字体文件是直接从Windows/Fonts下面复制的。

需要用一个工具转换下:https://github.com/fonttools/fonttools

先在系统上安装Python环境,然后用pip安装fonttools这个工具:

pip install fonttools

安装完毕后,把ttf文件转换为ttx (xml)文件,再转换回ttf即可:

ttx my.ttf
ttx my.ttx

把重打包后的ttf文件,放入Android项目中再次加载即可正常工作。

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据