关于Android的字体
2013-05-31 14:01
141 查看
原文链接:http://blog.chinaunix.net/uid-26926660-id-3325421.html
分类: 嵌入式
一。背景
尽量写简单一点这次就不废话了。
二。分析
2.1. 文件系统中字体的位置:
/system/fonts/ 其中的ttf文件都是字库 对于源码/frameworks/data/fonts/下的字体文件
DroidSans-Bold.ttf 粗体的无衬线字体(拉丁字母等)
DroidSans.ttf 常规的无衬线字体(拉丁字母等)
DroidSansFallback.ttf 常规的无衬线字体(中文字符等,一般换字库就是替换此文件)
DroidSansMono.ttf 等宽的无衬线字体(拉丁字母等)
DroidSerif-Bold.ttf 粗体的衬线字体(拉丁字母等)
DroidSerif-BoldItalic.ttf 粗体+斜体的衬线字体(拉丁字母等)
DroidSerif-Italic.ttf 斜体的衬线字体(拉丁字母等)
DroidSerif-Regular.ttf 常规的衬线字体(拉丁字母等)
Clockopia.ttf (显示数字时钟时用的字体,非必须)
在frameworks/fonts/下有三个xml文件,分别是fallback_fonts.xml、system_fonts.xml、vendor_fonts.xml,最终被编进系统的是前面两个。
改变字体有不外乎两种方法,一是强制替换掉系统的默认字体,也就是把你想要替换的字体重命名成DroidSansFallback.ttf,替换掉/system/fonts/下原来的那个,另外一种方法就是通过定义vendor
fonts xml的方法来设置,对于我们来说,第一种方法太过于暴力,且没有选择的余地。所以第二种方法更为可行
暴力替换法就不说了,现在说说厂商字体法:
2.2. vendor fonts方法:
假设你要添加一个XXXXX.ttf格式的字体文件:
按照android用例vendor_fonts.xml文件中注释介绍的方法,在/vendor/etc/目录下创建一个fallback_fonts.xml,例如
其中family order就表示描述的插入的vendor字体的需要代替的位置,即/system/etc/fallback_fonts.xml中描述的第10个family(从0开始),也就是DroidSansFallback.ttf,使用这种方法前也需要将“XXXXX.ttf”拷贝到/system/fonts下
三。总结:
这次也不废话了,不过要提醒一下,字库大部分都是有版权的,所以用别人的字库前都要小心,这也是为什么Android不再Settings中添加字体的选择栏的原因,如果你用了别人的字库没有交保护费的话而产品又买了不少钱的话,呵呵,律师函估计已经在抵达的途中。
分类: 嵌入式
一。背景
尽量写简单一点这次就不废话了。
二。分析
2.1. 文件系统中字体的位置:
/system/fonts/ 其中的ttf文件都是字库 对于源码/frameworks/data/fonts/下的字体文件
DroidSans-Bold.ttf 粗体的无衬线字体(拉丁字母等)
DroidSans.ttf 常规的无衬线字体(拉丁字母等)
DroidSansFallback.ttf 常规的无衬线字体(中文字符等,一般换字库就是替换此文件)
DroidSansMono.ttf 等宽的无衬线字体(拉丁字母等)
DroidSerif-Bold.ttf 粗体的衬线字体(拉丁字母等)
DroidSerif-BoldItalic.ttf 粗体+斜体的衬线字体(拉丁字母等)
DroidSerif-Italic.ttf 斜体的衬线字体(拉丁字母等)
DroidSerif-Regular.ttf 常规的衬线字体(拉丁字母等)
Clockopia.ttf (显示数字时钟时用的字体,非必须)
在frameworks/fonts/下有三个xml文件,分别是fallback_fonts.xml、system_fonts.xml、vendor_fonts.xml,最终被编进系统的是前面两个。
改变字体有不外乎两种方法,一是强制替换掉系统的默认字体,也就是把你想要替换的字体重命名成DroidSansFallback.ttf,替换掉/system/fonts/下原来的那个,另外一种方法就是通过定义vendor
fonts xml的方法来设置,对于我们来说,第一种方法太过于暴力,且没有选择的余地。所以第二种方法更为可行
暴力替换法就不说了,现在说说厂商字体法:
2.2. vendor fonts方法:
假设你要添加一个XXXXX.ttf格式的字体文件:
按照android用例vendor_fonts.xml文件中注释介绍的方法,在/vendor/etc/目录下创建一个fallback_fonts.xml,例如
<familyset> <family order="9"> <fileset> <file>XXXXX.ttf</file> </fileset> </family> </familyset> |
三。总结:
这次也不废话了,不过要提醒一下,字库大部分都是有版权的,所以用别人的字库前都要小心,这也是为什么Android不再Settings中添加字体的选择栏的原因,如果你用了别人的字库没有交保护费的话而产品又买了不少钱的话,呵呵,律师函估计已经在抵达的途中。
相关文章推荐
- 关于android中怎么设置TabWidget中图片及字体的大小的问题
- 关于Android系统字体的一些知识
- 关于android系统Dialog如何设置字体大小
- 关于网上解决Android4.x系统设置字体大小导致应用布局混乱引起的问题
- 关于android自定义字体颜色和点击改变字体颜色
- android 关于app内设置字体样式的研究
- 关于在build.prop里加入改变android默认字体大小的属性
- 关于Android 中TextView字体设置的那点事
- Android关于Spinner的使用(更换字体颜色,下拉列表的条目布局)
- 关于Android的字体
- Android中关于字体宽高的获取
- 关于Android的字体
- 关于android 字体
- 关于android的字体大小
- 关于android对xml字体修改
- 关于Android如何更换整个应用字体的总结
- react native关于自定义字体图标android和IOS的处理
- android颜色关于Android TabHost切换Tab字体的颜色背景颜色改变
- 关于H5限制android字体放大缩小的方法
- 关于Android切换系统字体大小和字体样式导致App崩溃或者界面错乱的问题