为Android添加多国语言包.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
为Android添加多国语言包.pdf

虽然 Android 从2.3 开始已经支持50 种以上的语言,但是不是每种语言都有字体可以显示。遇到一个新需求 , 有客户要求对hindi 语言的支持。于是上网找了一些资料,发现网上介绍的大部分是如何替换默认字体,就 是替换./frameworks/base/data/fonts /DroidSansFallback.ttf ,但是替换完之后,中文就无法正常显示。其实 只要有下面几个步骤,就可以实现新曾加一种语言的显示支持: 1. 需要有可以显示hindi 语言的字体,我在网上下载了一个:DroidHindi.ttf 2. 需要修改的地方主要有   1 )将下载的字体文件拷贝到: ./frameworks/base/data/fonts/   2 )修改 ./frameworks/base/data/fonts/Android.mk ,将DroidHindi.ttf 添加到 copy_from :     copy_from := \         DroidSans.ttf \         DroidSans-Bold.ttf \         DroidSansArabic.ttf \         DroidSansHebrew.ttf \         DroidSansThai.ttf \         DroidHindi.ttf \         DroidSerif-Regular.ttf \         DroidSerif-Bold.ttf \         DroidSerif-Italic.ttf \         DroidSerif-BoldItalic.ttf \         DroidSansMono.ttf \         Clockopia.ttf 复制代码   3 ) Hindi 的语言代码是hi_IN ,修改./device/qcom/common/common.mk ,将hindi 的语言代码加进去, 这样在你的设置-语言和键盘-选择语言里面就可以看见hindi 语言了: PRODUCT_LOCALES := en_US en_GB es_ES es_US fr_FR zh_CN zh_TW hi_IN it_IT pt_PT ru_RU    4 )修改 ./external/skia/src/ports/SkFontHost_android.cpp ,将DroidHindi.ttf 加进去。网上介绍的很多 方法都没有提到这一步,如果没有这一步的话,添加的语言是不生效的,显示的是乱码,因为android 无法 找到hindi 语言可以显示的字体,还是会选择默认字体去显示。修改的地方为: /* Fonts must be grouped by family, with the first font in a family having the list of names (even if that list is empty), and the following members having null for the list. The names list must be NULL-terminated */ static const FontInitRec gSystemFonts[] = { { DroidSans.ttf, gSansNames }, { DroidSans-Bold.ttf, NULL }, { DroidSerif-Regular.ttf, gSerifNames }, { DroidSerif-Bold.ttf, NULL }, { DroidSerif-Italic.ttf, NULL }, { DroidSerif-BoldItalic.ttf, NULL }, { DroidSansMono.ttf, gMonoNames }, /* These are optional, and can be ignored if not found in the

文档评论(0)

带头大哥 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档