emwin如何添加字体并显示中文

这里以加入中文字体为例,说明如何建立字库,调用,并显示字体

1. 字体库的建立

 

打开macs文件中的emwinSoftware文件夹,打开FontCvtNXP.exe文件

 

选择Standard  点击OK


这里以微软雅黑为例,字号24,24字号表示一个英文字符宽12像素长24像素,而中文字符长宽都是24像素。

字体界面,默认所有字是启用的状态,左侧数字是字的字符标准编码


因为我们不建立有所有字体的字库(太大),因此先禁用所有的字体,Edit----Disable all character

右键点击选择Toggle character 即可切换启用/禁用字体,启用字体会以白色显示


如果是中文,可以通过工具转换成标准编码,然后使用Edit----Enable range of character进行切换


如果下次还要继续编辑,则需要保存启用字体列表,Edit-----Save pattern file ,在下次要接着编辑时候点击Readpattern file读取。有一种简单的方法是:利用这个pattern file也就是.text文件,按照它的格式写入想要的字。disable all character,然后直接read pattern file,这时候就会发现你想要的字都点亮了,然后保存成英文名的.c文件。

 

编辑完成后保存文件,文件名务必改成英文否则内部函数名称会出错乱码


使用Sublime text 打开保存的文件后可以看到字库


在keil项目中添加这一个文件,在需要调用这一个字库的文件位置添加extern GUI_CONST_STORAGE GUI_FONT GUI_Fontxxxxx;

 

【Xxxxx是字库文件的名称】

 

2.keil调用并显示文字

 

先设置文字模式为背景透明   GUI_SetTextMode(GUI_TM_TRANS);

下图演示了几种文字绘制模式。

设置文字的颜色位白色   GUI_SetColor(0xFFFFFF)

 

之后设置字体  GUI_SetFont(&GUI_Fontxxxxx);

 

在指定位置显示文字,在这之前我们需要先将文字转换成可以被emwin识别的字符串

  

 

打开emwinSoftware文件夹中的软件U2C.exe

 

选择文件,文件内填写我们需要的文字,保存时候选择UTF-8编码


保存后文件,复制字符到keil中

 

存储为静态字符类型


之后即可进行调用,方法示例GUI_DispStringAt(&chstr[0], x, y);

特别提示:因为FontCvtNXP.exe产生的是unicode码,而U2C产生的是UTF8码,所以在仿真或者实际应用中需要在GUI_Init()后面添加GUI_UC_SetEncodeUTF8()函数,启用UTF8码。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值