(2)根据需求选择字体类型和字体大小
(3)另存为XBF格式
2:创建XBF字体
#include"DIALOG.h"#include"font_cn.h"FATFSfatfs;GUI_FONTXBF_Font;FILFontfile;FRESULTresult;unsignedintbw;GUI_XBF_DATAXBF_Data;staticint_cbGetData(U32Off,U16NumBytes,void*pVoid,void*pBuffer){FIL*FontFile;FontFile=(FIL*)pVoid;result=f_lseek(FontFile,Off);if(result!=FR_OK){return1;}result=f_read(FontFile,pBuffer,NumBytes,&bw);if(result!=FR_OK){return1;}return0;}staticvoid_ShowXBF(u8*pname){result=f_mount(&fatfs,(constTCHAR*)pname,0);result=f_open(&Fontfile,(constTCHAR*)pname,FA_OPEN_EXISTING|FA_READ|FA_OPEN_ALWAYS);if(result!=FR_OK){return;}GUI_XBF_CreateFont(&XBF_Font,//PointertoGUI_FONTstructureinRAM&XBF_Data,//PointertoGUI_XBF_DATAstructureinRAMGUI_XBF_TYPE_PROP_AA4_EXT,//Fonttypetobecreated_cbGetData,//Pointertocallbackfunction&Fontfile//PointertobepassedtoGetDatafunction);}voidFont_Init(u8*pname){_ShowXBF(pname);GUI_UC_SetEncodeUTF8();}
3:使用文字小工具创建TEXT
Font_Init("0:/FONT/KoPu.xbf");hItem=TEXT_CreateEx(37,160,ICON_TEXT_SIZE_X,ICON_TEXT_SIZE_Y,0,WM_CF_SHOW,TEXT_CF_HCENTER,GUI_ID_TEXT0,"IO输出");TEXT_SetTextColor(hItem,GUI_DARKBLUE);TEXT_SetFont(hItem,&XBF_Font);
这里特别注意的是文件的编码格式选择UTF-8编码要不显示会乱码
IAR环境下设置文件编码的方法:
第一种方法:菜单Toos->Options->Editor
第二种方法:在编辑器的编辑区点右键”CharacterEncoding“选项,选择“ConverttoUTF-8”