硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1895|回复: 16
收起左侧

[emWin] emwin显示字符华摄氏度单位”°F“,显示不了

[复制链接]

15

主题

73

回帖

118

积分

初级会员

积分
118
发表于 2021-11-16 10:43:27 | 显示全部楼层 |阅读模式
emiwn显示华摄氏度°F。使用工具emwin Font Converter,已经使能了度的单位"°"(代号0xB0)..但是依然无法显示出来,也改过keil编译器的Encoding选项,还是不行。求教各位如何显示这个单位"°F"

尝试过各种写法GUI_DispStringInRect("ACS/° AVC/° °F\°°F\°F°°°ABC--°F", ...),最终只是显示了----->CS/ AVC/FFABC

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107418
QQ
发表于 2021-11-16 11:23:21 | 显示全部楼层
你转换前,看下字库里面有这个字符没。
回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-17 11:30:33 | 显示全部楼层
eric2013 发表于 2021-11-16 11:23
你转换前,看下字库里面有这个字符没。

有的看了生成的.c文件

...
...
,{16, 16, 4, acGUI_FontArial32_007E} /* code 007E */
,{11, 11, 3, acGUI_FontArial32_00B0} /* code 00B0 */
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107418
QQ
发表于 2021-11-17 13:58:43 | 显示全部楼层
WSTON 发表于 2021-11-17 11:30
有的看了生成的.c文件

...

在FontCvt小软件里面看。
回复

使用道具 举报

22

主题

96

回帖

162

积分

初级会员

积分
162
发表于 2021-11-17 17:55:48 | 显示全部楼层
显示这个℉肯定是没问题的,检查一下有没有调用了正确的字库
回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-18 10:17:17 | 显示全部楼层
eric2013 发表于 2021-11-17 13:58
在FontCvt小软件里面看。

也是有的,截图如下:

FontCvt截图

FontCvt截图
回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-18 10:18:53 | 显示全部楼层
eric2013 发表于 2021-11-17 13:58
在FontCvt小软件里面看。

我这边是按需选择了一些常用的字库,"°"这个字在字库里面的 0xB0位置,已经使能了,.c文件里面也有看到。
回复

使用道具 举报

4

主题

117

回帖

129

积分

初级会员

积分
129
发表于 2021-11-18 10:30:43 | 显示全部楼层
这个华氏度不知你是用圈+F还是独立的华氏度字符。若是圈+F摄氏度也有问题。若是独立字符摄氏度常用字符就有,华氏度不是所有字库都支持的。独立字符“℃℉”非独立字符“°C°F"
回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-18 11:18:33 | 显示全部楼层
hance2000 发表于 2021-11-18 10:30
这个华氏度不知你是用圈+F还是独立的华氏度字符。若是圈+F摄氏度也有问题。若是独立字符摄氏度常用字符就有 ...

是"°"+“F”,但是"°"显示不出来,字库里面有,生成的.c文件也能够找到对应的编码。
回复

使用道具 举报

336

主题

2042

回帖

3055

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3055
发表于 2021-11-18 14:03:46 | 显示全部楼层
本帖最后由 caicaptain2 于 2021-11-18 14:13 编辑

你的C文件应该用utf-8格式,这样才能显示特殊字符和中文。比如使用微软雅黑字体,直接就有℉这个符号,单字符的。可以生成对应的字体文件。
Snipaste_2021-11-18_14-07-39.jpg

我这里可以用这样的就行。代码和显示一致。输入这个华氏度的时候,用普通输入法就行。 Snipaste_2021-11-18_14-12-36.jpg
{ TEXT_CreateIndirect, "Const T1       ℉ ",ID_TEXT_CONSTTEMP1,   640,   7, 160, 20, 0, 0x1, 0 },



回复

使用道具 举报

336

主题

2042

回帖

3055

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3055
发表于 2021-11-18 14:19:55 | 显示全部楼层
本帖最后由 caicaptain2 于 2021-11-18 14:21 编辑

上一个帖子,我说的是合成的华氏度℉字符。
还有一种方法,你可以使用emwin的自带字符集就可显示单独的角度符号“°”,后面跟上字符F就好了。
比如设定字符为GUI_Font24_1 ,里面就有这个角度符号。

GUI_SetFont(&GUI_Font24_1);
GUI_DispStringAt("here is °F", 10,10);就可了。
你看看emwin的说明书,里面有这个信息。

Snipaste_2021-11-18_14-19-03.jpg
使用这种emwin内部的字符,C文件本身应该用ANSI编码也可以了,要求就比较低了。


回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-18 15:26:31 | 显示全部楼层
caicaptain2 发表于 2021-11-18 14:19
上一个帖子,我说的是合成的华氏度℉字符。
还有一种方法,你可以使用emwin的自带字符集就可显示单独的角 ...

因为要统一字体,所以我没有尝试另外一种方法,选择了自带这种,但是依旧不可以,我直接在Kiel里面编写,折腾了一会还是不行。然后到GUIBuild里面去尝试,在GUIBuild的显示效果与直接上板效果一样的。不知到你这边是如何输入这个"°",我这边win自带输入法,输入 ”du“之后,就可以在选项中得到"°"。
du.png
dudu.png
回复

使用道具 举报

336

主题

2042

回帖

3055

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3055
发表于 2021-11-18 16:10:04 | 显示全部楼层
本帖最后由 caicaptain2 于 2021-11-18 16:46 编辑

这样,用这个试试。
1,把你的c文件存储为utf-8的格式。就是用记事本打开你的c文件,然后另存为,选择utf-8格式。 把这个文件替换你的原来的。
2,在emwin的初始化中加入 GUI_UC_SetEncodeUTF8();
然后,输入法中的°这个符号应该可以正常显示了。
回复

使用道具 举报

3

主题

17

回帖

26

积分

新手上路

积分
26
发表于 2021-11-18 16:21:18 | 显示全部楼层
我试了下,看是不是这种 IMG_61721.jpg
回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-22 09:32:57 | 显示全部楼层
caicaptain2 发表于 2021-11-18 16:10
这样,用这个试试。
1,把你的c文件存储为utf-8的格式。就是用记事本打开你的c文件,然后另存为,选择utf- ...

可以了可以了,就这样,utf-8格式。我一开始直接在keil里面设置里面用那个utf-8格式,不行,后面用记事本保存为utf-8格式就好了,不加GUI_UC_SetEncodeUTF8();也行。感谢老铁
回复

使用道具 举报

15

主题

73

回帖

118

积分

初级会员

积分
118
 楼主| 发表于 2021-11-22 09:33:39 | 显示全部楼层
zysxdg 发表于 2021-11-18 16:21
我试了下,看是不是这种

对对,就这种,解决啦解决了.文件格式问题,
回复

使用道具 举报

336

主题

2042

回帖

3055

积分

版主

Rank: 7Rank: 7Rank: 7

积分
3055
发表于 2021-11-23 11:15:05 | 显示全部楼层
WSTON 发表于 2021-11-22 09:32
可以了可以了,就这样,utf-8格式。我一开始直接在keil里面设置里面用那个utf-8格式,不行,后面用记事本保 ...

因为我做的产品也是经常用到各种特殊的字符啊单位啊,所以研究了一段时间,感同身受。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-30 22:21 , Processed in 0.210113 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表