在安卓操作系统下对于 TextView 字体的支持非常有限,默认情况下 TextView 的 typeface 属性支持 "Sans","serif","monospace" 这三种字体,如果在没有指定字体的情况下,系统缺省会使用 "Sans" 作为文本显示的字体。但这三种字体只支持英文,也就是说只要你显示的文字是中文,无论你选择这三种字体中的哪一种,显示效果都是一样的。为此,谷歌又提供了另外一种字体的支持方式:字库。

/** 
* 在 assets 目录下创建 fonts 文件夹并放入要使用的字体文件(**.ttf)并提供相对路径给 
* createFromAsset(AssetManager mgr, String path) 来创建 Typeface 对象,再通 
* 过TextView.setTypeface(Typeface tf) 指定文本显示的字体。 
*/ 
Typeface face = Typeface.createFromAsset(getAssets(),"fonts/SIMFANG.TTF"); 
tv_title = (TextView) findViewById(R.id.tv_title); 
tv_title.setTypeface(face);

还需要补充说明一下:虽然采用这种方式可以实现自己想要的显示效果,但是在采用这种方法之前开发人员还是需要考虑下性能消耗和运行环境以及自己 APP 的风格,然后再做出对应的选择。

原因有以下几点: 
•字库文件的大小:因为字库的尺寸少则几兆,多则几十兆,文件打包的时候对 *.ttf 格式的文件压缩率很低,所以会无形中增大 APP 的体积。 
•运行环境的考虑:如果你的应用面向的是高版本的运行环境,可以考虑使用这种方法,如果用户的运行环境是 Android 2.2 需要放弃该方法。 
•应用风格的考虑:如果你的应用既面向高版本运行环境,并且你的应用中统一使用指定的字体,可以考虑使用该方法;若是单单为了应用中的某几个字的显示效果就使用字库,则会得不偿失。

添加字库还有以下方法:

1、路径:android4.0\out\target\product\xx\system\fonts

把需要添加的字库文件xx.ttf放到此文件夹

2、android4.0\out\target\product\xx\system\etc

在fallback_fonts.xml和system_fonts.xml文件中添加新项

<family>

  <fileset>

    <file>xx.ttf</file>

  </fileset>

</family>

转载于:https://www.cnblogs.com/lyz459/archive/2013/02/02/2890179.html

android字库使用相关推荐

  1. android字库,android L 上切换字库方法

    本FAQ介绍的是在 android L上需要实现切换字库的功能. [SOLUTION] 切换字体我司提供两种方法 方法一:无论是在何种语言下都使用客户定制的字库 方法二:在特定的语言下使用客户定制的字 ...

  2. QML on Android 在小米5s手机上中文字体显示异常

    前言 随着Qt版本的不断升级,用QML开发Android移动端应用越来越方便,并且支持的功能也逐渐增多,不过由于Android机型实在太多,并且大部分Android系统都是由手机厂商深度定制过,然后在 ...

  3. Android 4.4.2 系统源码字体库精简、添加

    字体加载原理 首先先来阐述一下Android的字体加载原理,Android系统的字体配置文件位于workspace/frameworks/base/data/fonts/ 文件夹下,分为 system ...

  4. Android 底层知识拾零

    http://blog.csdn.net/zhoumushui/article/details/41623903 1.Android字库文件 打开Android源码路径: framework/base ...

  5. Android的Recovery中font_10x10.h字库文件制作

    任务是要汉化Android中的Recovery,就了解了bootable/recovery/minui/font_10x18.h这个英文字库的来历,最终汉化的时候并没有自己汉字字库,用的github上 ...

  6. 增加字库 安卓_【Android】Android4.4添加新语言和字库

    一.修改编译配置文件 目的:让PRODUCT_LOCALES := 后面有我们需要添加的语言. 一般原生安卓代码是修改这两个文件 Android/build/target/product/langua ...

  7. android自动识别文字,Android文字识别tesseract ocr -训练样本库 识别字库

    目录 安装tesseract ocr引擎和jTessBoxEditor 安装jTessBoxEditor 开始制作box 准备好训练的图片 将图片转为tif格式的样本图片 合并样本图片 修改box文件 ...

  8. Android 5.1添加字库

    1.添加原因 项目中客户提供的字库仅仅包括Baisc Latin,即基本的英文字母等,这个字库现替换了原生的Roboto-Regular.而原生的Roboto-Regular字库包括了更多的语系,包括 ...

  9. Android的Recovery中font_10x18.h字库文件制作

    任务是要汉化Android中的Recovery,就了解了bootable/recovery/minui/font_10x18.h这个英文字库的来历,最终汉化的时候并没有自己汉字字库,用的github上 ...

最新文章

  1. matlab-高数 find 找到集合中特定元素的位置
  2. 六式建站浅见,和大家一起分享,不足之处还望斧正。
  3. python中的with上下文管理器
  4. spring webflow : 上传单个文件实例
  5. 计算机编程方程求解的步骤,计算机解决问题的过程PPT学习课件
  6. python有类似spring_Python的Spring与J的Spring相比
  7. Rust: Atom中cargo build error
  8. js动态填充select
  9. Redis 常见面试题(带答案)110道
  10. 计算机中显示器的分类,显示器怎么分类
  11. Codeforces 1153
  12. 【数据说第九期】如何分析用户行为数据,来驱动业务增长?
  13. Zabbix分布式部署
  14. 理解CentOS的Endpoint仓库是什么
  15. winform实现关闭或最小化隐藏到右下脚
  16. 策略验证_买入口诀_双管齐下买进不怕
  17. Windows10强力卸载OneDrive
  18. AI篮球裁判火了,走步算得特别准,就问哈登慌不慌
  19. WeinView 与 MITSUBISHI FX 系列 PLC 通讯范例
  20. “一城一湖”风景独好,“洪城智能体”加速南昌迈向全场景智慧

热门文章

  1. Windows:Win10恢复照片查看器
  2. 浙江工业大学信息工程学院研究生申请学位学术成果要求
  3. 查查移动端app运行闪退的原因
  4. Css white-space属性
  5. 八种提高上网速度的方法(转)
  6. 蓝桥杯-黄金队列 java
  7. Python 利用 pyecharts 做数据分析绘图
  8. 大淘客CMS添加自定义友链
  9. 多重背包模板 C++
  10. 怎样在图片内添加合适的对话框?