安富莱 fontcvt字符点阵显示程序要点和mdk宽字符支持函数

来源:互联网 发布:mac支持的大型网游 编辑:程序博客网 时间:2024/06/05 06:15
步骤大体分两步:
一,制作字库:
1.新建个1.txt文本,写入“挪威的森林”这几个字,保存为unicode格式。
2.用FontCvt工具,将1.txt文本通过read pattern file导入
3.保存为1.c文件,该文件即为字库文件了,填加到工程内编译即可。
二,显示调用:
1.将上述的1.txt保存为UTF-8格式
2.通过U2C工具,将1.txt转换为1.c,并打开,可见下述字符串:
"\xe6\x8c\xaa\xe5\xa8\x81\xe7\x9a\x84\xe6\xa3\xae\xe6\x9e\x97"
该字符串即为“挪威的森林”对应的UTF-8格式码
3.调用字符显示函数,并将上述字符串做为参数写入
这种方法不完美的地方就在于,在显示调用时,不能直接用"挪威的森林"汉字做参数,得先转换一下,这样就不太方便写代码
简单代码台下:

GUI_Init();
GUI_UC_SetEncodeUTF8();
GUI_SetFont(&GUI_Fontst72);

GUI_DispStringInRectWrap("\xe6\x8c\xaa\xe5\xa8\x81\xe7\x9a\x84\xe6\xa3\xae\xe6\x9e\x97", &Rect, GUI_TA_HCENTER, GUI_WRAPMODE_WORD);


//-----------------------------------------------------------------------------------------------------------

问题分析:MDK-ARM中国版支持宽字符,但要使用正确的格式字符串。
      操作步骤:
      将"%s"改为 "%ls",在测试程序中将swprintf函数调用语句修改为:
      swprintf (str2, (sizeof(str2)/sizeof(wchar_t)), L"%ls", str1);

//---------------------------------------------------------------------------------------------------------

http://bbs.armfly.com/read.php?tid=377   安富莱stemwin小工具下载地址

见安富莱电子stemwin电子文档18章:

http://pan.baidu.com/s/1c1b32Bu#path=%252FFTP%252F%25E5%25BC%2580%25E5%258F%2591%25E6%259D%25BF%252FSTM32-V5%25E5%25BC%2580%25E5%258F%2591%25E6%259D%25BF%252FV5%25E9%2585%258D%25E5%25A5%2597%25E8%25B5%2584%25E6%2596%2599(4.22G)%252F02.%25E9%2585%258D%25E5%25A5%2597%25E4%25BE%258B%25E7%25A8%258B%252F04.STemWin%25E6%2595%2599%25E7%25A8%258B%25E5%2592%258C%25E4%25BE%258B%25E5%25AD%2590%252FSTemWin%25E6%2595%2599%25E7%25A8%258B%25E9%2585%258D%25E5%25A5%2597%25E8%25B5%2584%25E6%2596%2599

STM32-V5开发板百度盘:25E9%2585%258D%25E5%25A5%2597%25E8%25B5%2584%25E6%2596%2599

0 0
原创粉丝点击