1.添加原因
項目中客戶提供的字庫僅僅包括Baisc Latin,即基本的英文字母等,這個字庫現替換了原生的Roboto-Regular。而原生的Roboto-Regular字庫包括了更多的語系,包括不能正常顯示的斯洛文尼亞語,因此需要將原生字庫添加至系統中。
2.添加步驟:
涉及修改文件路徑爲framework/base/data/fonts
1)添加ttf:
附件原生的Roboto-Regular.tff改名爲RobotoOther-Regular.tff,拷貝至framework/base/data/fonts下。
2)修改Android.mk:
else # !MINIMAL_FONT
font_src_files += \
……
RobotoCondensed-LightItalic.ttf \
RobotoOther-Regular.ttf
3)修改fonts.mk:
PRODUCT_PACKAGES := \
……
NotoSansCJK-Regular.ttc \
RobotoOther-Regular.ttf \
以上1、2、3步保證ttf安裝到系統
4)修改system_fonts.xml
或者修改fallback_fonts.xml,添加如下family:
<family>
<fileset>
<file>RobotoOther-Regular.ttf</file>
</fileset>
</family>
5)修改fonts.xml
5.1之後,需要同步修改fonts.xml,添加如下family
<family>
<font weight="400" style="normal">RobotoOther-Regular.ttf</font>
</family>
注意添加位置,fonts.xml中<alias name是緊隨 <family name之後的,不要插入到二者之間。目前放在了前面。