硬汉嵌入式论坛

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

[emWin] 汉子出现乱码问题

[复制链接]

24

主题

83

回帖

155

积分

初级会员

积分
155
发表于 2018-11-9 21:41:18 | 显示全部楼层 |阅读模式
最近在用emwin做界面,用的IAR编译器,做出来的界面有两个问题,一个是显示中文后面有英文字母,有时候显示位置会偏上,但是已经设置了水平中心和垂直中心对齐,另一个问题是编辑框控件是早期版本的显示效果,不是扁平化的效果,我用的是emwin5.22。刚开始怀疑是中文字库的问题,我把字库放到其他工程中用就没出现这种情况。可以帮忙看一下吗?显示图片如下

显示不对

显示不对
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117630
QQ
发表于 2018-11-10 01:25:04 | 显示全部楼层
扁平化是emWin5.28及其以上版本开始自动使能了,你升级下先看看效果。
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-10 09:32:07 | 显示全部楼层
eric2013 发表于 2018-11-10 01:25
扁平化是emWin5.28及其以上版本开始自动使能了,你升级下先看看效果。

请问怎么升级呀,都需要替换哪些文件呀
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-10 09:34:26 | 显示全部楼层
eric2013 发表于 2018-11-10 01:25
扁平化是emWin5.28及其以上版本开始自动使能了,你升级下先看看效果。

具体的版本应该怎么看,我是在GUI.h头文件最前面的注释中看到是emwin5.22,这样看版本正确吗?
回复

使用道具 举报

36

主题

2051

回帖

2159

积分

至尊会员

积分
2159
发表于 2018-11-10 11:47:11 | 显示全部楼层
手牵手看夕阳 发表于 2018-11-10 09:32
请问怎么升级呀,都需要替换哪些文件呀

替换lib库文件和include文件夹的所有库文件就可以了。
Ever tried. Ever failed. No matter. Try Again. Fail again. Fail better.
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-11 20:23:07 | 显示全部楼层
eric2013 发表于 2018-11-10 01:25
扁平化是emWin5.28及其以上版本开始自动使能了,你升级下先看看效果。

中文汉字显示不正确也可能是emwin版本的是吗,我用的是IAR7.8有没有可能是编译器的问题?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117630
QQ
发表于 2018-11-12 00:52:45 | 显示全部楼层
手牵手看夕阳 发表于 2018-11-11 20:23
中文汉字显示不正确也可能是emwin版本的是吗,我用的是IAR7.8有没有可能是编译器的问题?

你用生成的是什么方式的字体? XBF还是SIF
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2018-11-12 08:54:12 | 显示全部楼层
送数据的时候,直接用中文字符串还是 16进制的编码?
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-12 09:25:01 | 显示全部楼层
廷润 发表于 2018-11-12 08:54
送数据的时候,直接用中文字符串还是 16进制的编码?

是中文字符串
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-12 18:11:46 | 显示全部楼层
eric2013 发表于 2018-11-12 00:52
你用生成的是什么方式的字体? XBF还是SIF

用的网上下载的ucGUI字体生成器 V3.0 ,同事推荐的,生成的字库在其他工程中测试显示正常,用到我的工程中就出现问题了。唯一的不同是我用的IAR7.8,测试字库的工程用的Keil5?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117630
QQ
发表于 2018-11-13 03:37:19 | 显示全部楼层
手牵手看夕阳 发表于 2018-11-12 18:11
用的网上下载的ucGUI字体生成器 V3.0 ,同事推荐的,生成的字库在其他工程中测试显示正常,用到我的工程 ...

直接使用emWin自己支持的兼容性好,你测试下emWin自己直接的方式看看。
回复

使用道具 举报

29

主题

514

回帖

606

积分

金牌会员

积分
606
QQ
发表于 2018-11-13 08:38:08 | 显示全部楼层

用中文字串,你的文件编码跟编译器设置的编码都有相关的,挺多新玩家都踩过这个坑。
估计你的程序文件或者编译器设置了GKF编码,emWin显示中文需要开启UTF-8,识别UTF-8编码所对应的 16进制编码。

你看我上一篇贴子,还有一个查编码的链接,自己琢磨一下
回复

使用道具 举报

9

主题

140

回帖

187

积分

初级会员

积分
187
QQ
发表于 2018-11-13 09:06:34 | 显示全部楼层
可以试试我的emwin字体工具,了解一下。
https://forum.anfulai.cn/forum.p ... id=87428&extra=
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-13 19:50:19 | 显示全部楼层
廷润 发表于 2018-11-13 08:38
用中文字串,你的文件编码跟编译器设置的编码都有相关的,挺多新玩家都踩过这个坑。
估计你的程序文件或 ...

今天按照您说的仔细看了一下,IAR编译器默认的编码格式是GB2312,把与显示有关的文件都改成UTF-8格式后显示正常了。真的非常感谢您。困扰几天的问题终于解决了!!!!!
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-13 19:57:04 | 显示全部楼层
eric2013 发表于 2018-11-13 03:37
直接使用emWin自己支持的兼容性好,你测试下emWin自己直接的方式看看。

今天用FontCvt生成的字库,按照手册上的步骤一步一步做的,最后显示正常了。我还有个疑问相同的字库在Keil编译器上显示正常,怎么到IAR上就显示有问题呢?今天看了一下两个编译器默认的编码格式,Keil默认的编译格式是ANSI,IAR的是GB2312,是不是因为这个的原因?
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-13 19:58:58 | 显示全部楼层
eric2013 发表于 2018-11-10 01:25
扁平化是emWin5.28及其以上版本开始自动使能了,你升级下先看看效果。

换成emwin3.0的库了,现在是扁平化效果。非常感谢您
回复

使用道具 举报

24

主题

83

回帖

155

积分

初级会员

积分
155
 楼主| 发表于 2018-11-13 20:05:42 | 显示全部楼层
allyzc 发表于 2018-11-13 09:06
可以试试我的emwin字体工具,了解一下。
https://forum.anfulai.cn/forum.php?mod=viewthread&tid=87428&ex ...

好的,非常感谢
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-19 08:53 , Processed in 0.050482 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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