微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > mt2503 11Acosmos工程,设置 VFX_FONT_DESC_ATTR_MONOSPACE属性后在 ...

mt2503 11Acosmos工程,设置 VFX_FONT_DESC_ATTR_MONOSPACE属性后在 ...

时间:10-02 整理:3721RD 点击:
[Vector Font] 11Acosmos工程,设置VFX_FONT_DESC_ATTR_MONOSPACE属性后在gallery界面和vrt界面会出现死机现象

[DESCRIPTION]
在一些界面assert死机,死机时函数调用如下:FT_Open_Face----FT_Stream_New---FT_Stream_Open---ft_open----freetype_dummy_file_open在这
里直接assert了原因:设置VFX_FONT_DESC_ATTR_MONOSPACE的话,查找字库时会从第二个字库开始查找,而客户当前工程只有一个字库。
[SOLUTION]
添加红色标记部分
voidMMI_fe_set_family(S32family_index)
{
/*----------------------------------------------------------------*/
/*LocalVariables*/
/*----------------------------------------------------------------*/
/*----------------------------------------------------------------*/
/*CodeBody*/
/*----------------------------------------------------------------*/
if(g_mmi_fe_font_file_number[family_index]!=0)
{
g_mmi_fe_font_family=family_index;
g_mmi_fe_curr_font_list=g_mmi_fe_font_file_list[g_mmi_fe_font_family];
}
//mmi_fe_multiple_file_init();
}
下面内容是对VFX_FONT_DESC_ATTR_MONOSPACE的解释及使用时注意事项:
VFX_FONT_DESC_ATTR_MONOSPACE的作用是显示的字符是等宽的
使用该属性时注意事项:
1、该效果的实现依赖于字库,只有当字库中的字符是等宽的才会达到显示等宽的效果

2、该属性使得查找字库时是从第二个字库开始查找的,因此等宽字库一定不能是第一个字库,最好是第二个字库。
1)如何查看工程中的字库及字库顺序
文件CustFontDataHW.h中可以查看工程中所有的字库,如下面所列,工程中共有5个字库。下面列表顺序即代表字库顺序。
externconstU8________CUSTOMER__IMAGES__COSMOS480X800__________FONTS__mtk__STROKE_T9_CSTAR_TTF[];//第一个字库
externconstU8________CUSTOMER__IMAGES__COSMOS480X800__________FONTS__android__DROIDSANS_TTF[];//第二个字库
externconstU8________CUSTOMER__IMAGES__COSMOS480X800__________FONTS__ANDROID__DROIDSANSFALLBACK_TTF[];//第三个字库
externconstU8________CUSTOMER__IMAGES__COSMOS480X800__________FONTS__ANDROID__DROIDSANSMONO_TTF[];//第四个字库
externconstU8________CUSTOMER__IMAGES__COSMOS480X800__________FONTS__MTK__LATIN_TTF[];//第5个字库
2)如何修改字库顺序
添加字库是在文件Res_Font.c,PopulateFontResource中,通过调用ADD_FONT_RESOURCE方法将字库一个个地加入到工程中,调用的先后顺序决定了
1)中的顺序
如果要修改加入顺序,只需要将调用的相应ADD_FONT_RESOURCE语句顺序调整一下即可。

这个修改得到验证了么?

mmark

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top