Android使用第三方或者自制字体库(Typespace)
发布日期:2021-10-04 02:53:19 浏览次数:3 分类:技术文章

本文共 1002 字,大约阅读时间需要 3 分钟。

项目中使用到指定显示字体,因此也看了下,网上有很多例子总结有很多种,这里主要研究使用代码设置字体中产生的问题。

使用方法(字体库放在assets/fonts/下面)

TextView tv=findViewById(R.id.tv);AssetManager mgr = getAssets();Typeface tf = Typeface.createFromAsset(mgr, "fonts/myfont.ttf");tv.setTypeface(tf);

其实就这几句代码,也不复杂,在一般情况下这个是没问题的。

但是有一种情况,即手机在root情况下,使用字体大师 或者之类的软件来改变系统的所有字体,也就是说你的app里面的字体都变成了被字体大师指定的字体,在有时候是比较严格的情况下是不允许这样的,那怎么办呢?这个地方也可以使用setTypeface()方法来做。
字体库可以从网络上下载×××.ttf,然后使用以上方法加载即可。
当然很多情况下都是我们不需要这么大的字体库,这些字体库动不动就是几M多,而我们使用到的字可能就只有几个,那这种情况怎么办呢?

其实也很简单,我们可以自己制作字体库,然后放进去不就可以了。

那怎么来制作呢?
第一:下载字体制作软件,FontCreatorSetuphh(这个感觉相对好用)

第二:随便下载一个字体库,也可以从手机的system/fonts/DroidSansFallback.ttf 复制到桌面准备使用。

第三:打开软件把DroidSansFallback.ttf 打开,然后看到很多字,那怎么找到我们需要的字呢?当然是ctrl+f 搜索啦,这里搜索只能根据Unicode编码搜索,所以我们在度娘那里把文字“我的自制字体”几个制转成Unicode编码,然后复制对应的编码搜索。

第四:新建一个ttf文件,然后把我们在DroidSansFallback这里找到需要的字复制到我们新建的字体库文件中。

第五:选择我们复制过来的字,右键属性–》映射—》把那个Unicode码添加到下面的映射表中,把该字默认映射的Unicode删除,不然找不到该字,也就导致不能指定成功。这一步很重要。自制字体库主要就是要注意这一步骤。

到这一步就完成了。

这里写图片描述
这里写图片描述
这里写图片描述
* ps:再次声明对应的字需要对应的Unicode编码android系统才能寻到并且适配到该字否则无法适配。*

转载地址:https://blog.csdn.net/leifengpeng/article/details/48296119 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Android身份证号码验证
下一篇:Xcode5.1和IOS8.3真机调试

发表评论

最新留言

很好
[***.229.124.182]2024年03月07日 07时26分14秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

python采用单例模式游戏_Python单例模式(Singleton)的N种实现 2019-04-21
python安装第三方库方法_Python安装第三方库的3种方法 2019-04-21
因果信号的傅里叶变换_常用信号的傅里叶变换对 2019-04-21
java中random方法取值范围_Java Random.nextInt()方法,随机产生某个范围内的整数 2019-04-21
java判断题_java判断题 2019-04-21
java算法应用_看得见的算法(java源码)-7个经典应用诠释算法精髓 2019-04-21
java的min函数_java 包含min函数的栈 2019-04-21
jquery java jsonp_JSONP原理及JQUERY JSONP的使用 2019-04-21
html生成jsessionid,H5 APP 使用 JSESSIONID 保持会话登录 2019-04-21
大数据可视化陈为智慧树_知到智慧树大数据可视化网课答案 2019-04-21
前端背景图放置_web前端入门到实战:css 中的背景图片小技巧和存在的坑 2019-04-21
wordpress账号无法登陆_苦闷两个月,wordpress后台不能登陆的问题终于解决了! 2019-04-21
java option作用_java – 类Option [T]的意义是什么? 2019-04-21
php 整形 字符串排序,php-通过特定的字符串值进行排序 2019-04-21
每个java程序都至少有一个线程给主线程,java程序在主线程中判断各个子线程状态的操作,该如何解决... 2019-04-21
lotus php,LotusPhp框架目录_PHP教程 2019-04-21
java倒计时自动关闭弹窗,打开页面弹出窗口子窗口定时自动关闭 2019-04-21
mysql 常见存储过程,MYSQL存储过程 2019-04-21
php+jq+添加css,jquery如何添加css样式? 2019-04-21
matlab 函数 向量参数,Scipy integrate(quad,quadration,nquad)不能集成向量参数化函数?等效函数(MATLAB works)... 2019-04-21