Font search:
Mmi_lm_arabic_draw_cluster ()
--> Mmi_fe_show_single_cluster ()
--> Mmi_fe_show_font_data ()
--> Mmi_fe_shaper ()
--> Mmi_fe_get_font_data () // obtain the corresponding font data based on the vector font or dot matrix font.
Mmi_fe_get_font_data_internal () // dot matrix font information
--> Mmi_fe_show_thai_char_internal () // find the dot matrix data corresponding to the font
--> Getlangindex () // search for the range min value of the font index and font rangeoffset value in the font and rangedata
--> Searchindexinlist () // The bipartite method searches for the corresponding index subscript in rangedata through the CH range, and then finds the rangeoffset Based on the label.
Font display:
Mmi_fe_show_font_data () // use the corresponding drawing method based on the vector font or dot matrix font.
--> Gdi_show_char () // display the dot matrix font
---> G2d_draw_font ()
1. the header files under verdor/font/INC store font-related information and font data.
2. verdor/font/fontres. c defines the system font-related data.
Const 2010mtk_gmaxdeployedlangs;
Many Language Font types: similar to the following repeated content
Scustfontdata pluto_ch;
Scustfontdata pluto_ch_small;
Scustfontdata pluto_ch_large;
Sfontfamily keys = {9, {& pluto_ch_small, & pluto_ch, & signature, & signature, & pluto_ch, & mtk_virtual_keyboard, & signature }};
Const slanguagedetails mtk_glanguagearray [max_ages];
3. Data Structure fontres. h language list information
Typedef struct _ Your agedetails
{
U8 aname [language_name];
U8 alangssc [ssc_size];
U8 ncurrentfamily;
Sfontfamily * fontfamilylist [max_font_families];
U8 alangcountrycode [lcc_size];
} Slanguagedetails;
2.
Typedef struct _ fontfamily
{
B2ntotalfonts;
Scustfontdata * fontdata [max_fonts_data];
} Sfontfamily;
3.
Typedef struct _ custfontdata
{
U8 nheight;
U8 nwidth;
U8 nascent;
U8 ndescent;
U8 nequidistant;
U8 ncharbytes;
B2nmaxchars;
U8 * pdwidtharray;
U8 * pwidtharray;
# If defined (_ mmi_font_compression __)
* Poffsetarray;
# Else
U32 * poffsetarray;
# Endif
U8 * pdataarray; // font data, such as gb18030_data
# If defined (_ mmi_font_compression __)
Mmi_font_range_offset_struct * Prange; // gb18030_rangeoffset
# Else
U32 * Prange;
# Endif
2010pfonttype [max_font_types] [2];
Const rangedetails * prangedetails; // gb18030_rangeinfo
} Scustfontdata;