asysbang

 找回密码
 立即注册
查看: 5375|回复: 1
打印 上一主题 下一主题

系统添加切换字体功能

[复制链接]

513

主题

2

好友

6404

积分

管理员

Rank: 80Rank: 80Rank: 80Rank: 80Rank: 80

最佳新人 活跃会员 热心会员 推广达人 宣传达人 灌水之王 突出贡献 优秀版主 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2013-5-2 17:48:21 |只看该作者 |倒序浏览
转载请注明:www.asysbang.com

三星手机都带切换字体的功能

"设置"->"显示"->"显示设定"->"字体风格"

小米手机也实现了这个功能,但是切换之后需要重启才能生效

其实可以参考CM主题切换功能,对config添加一个标志位就可以不用重启来重新载入字体资源,三星添加的标志位是FlipFont

android默认的配置文件system/etc/system_fonts.xml

读取配置的代码在external/skia/src/port/FontHostConfiguration_android.cpp

SkFontHost_android.cpp负责去创建Typeface对象

切换字体的功能需要skia对应的去读取settings设置的字体文件

简单办法是skia替换原来的文件路径,更好的办法是添加一个优先级更高的逻辑

PS:android4.0的英文字体文件是Roboto-Regular.tff  ,所以只替换DroidSansFallback.tff的话,只有中文字体生效,英文字体是不生效的

-----------

自己写一个字体的apk也很简单只要应用的包名是com.monotype.android.font开头就可以了,这样就可以让三星的手机识别自己的字体应用了




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|aSys-帮 ( 京ICP备13033689号 )

GMT+8, 2024-10-5 21:19 , Processed in 0.042107 second(s), 18 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部