硬汉嵌入式论坛

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

[emWin] 第19章显示汉字的问题

[复制链接]

1

主题

6

回帖

1

积分

新手上路

积分
1
发表于 2016-3-16 17:46:18 | 显示全部楼层 |阅读模式
想在emwin的text控件上显示汉字,所以参考了教程第19章节的内容

以下是设置text的部分代码
TEXT_SetFont(HandleData[TempTXTHandle],&GUI_FontHZ16); // Set Chinese font
TEXT_SetText(HandleData[TempTXTHandle], "我");//HandleData[TempTXTHandle]是text的句柄
经过debug跟踪,发现分了两次进入GUIPROP_X_DispChar(U16P c),两次的形参分别是0x00CE 0x00D2,("我"的编码是0xCED2),想请问一下是不是有那个地方没有设置对呢.


而使用GUI_UC_DispString则能正常显示"我"

PS: 代码抄了GUICharPEx.c及GUI_Font16.c,只更改了读取点阵的代码
回复

使用道具 举报

8

主题

51

回帖

8

积分

初级会员

一起来学习

积分
8
发表于 2016-3-16 17:50:52 | 显示全部楼层
应该是句柄给错了吧
求支援
回复

使用道具 举报

1

主题

6

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2016-3-16 19:38:38 | 显示全部楼层

回 emwin爱好者 的帖子

emwin爱好者:应该是句柄给错了吧 (2016-03-16 17:50) 
这个不是这问题.
问题是怎么让系统知道这是两字节的字符,而不是单字节
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2016-3-17 09:38:06 | 显示全部楼层
是不是获取字库的底层有些问题,测试下别的控件,看看能够正常显示不。
回复

使用道具 举报

1

主题

6

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2016-3-17 10:14:47 | 显示全部楼层

回 eric2013 的帖子

eric2013:是不是获取字库的底层有些问题,测试下别的控件,看看能够正常显示不。 (2016-03-17 09:38) 
取字库的没有问题.只是TEXT_SetText是以ASCII编码(一个Byte)的方式载入写text,而不是以GB2312编码(双byte)的方式载入
回复

使用道具 举报

1

主题

6

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2016-3-17 10:15:45 | 显示全部楼层

回 eric2013 的帖子

eric2013:是不是获取字库的底层有些问题,测试下别的控件,看看能够正常显示不。 (2016-03-17 09:38) 
我能够以GUI_UC_DispString(显示双字节字符串)的函数写字,所以取字库是没问题的
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2016-3-17 10:20:44 | 显示全部楼层

回 mai0760 的帖子

mai0760:我能够以GUI_UC_DispString(显示双字节字符串)的函数写字,所以取字库是没问题的
(2016-03-17 10:15)
换个人别的控件试试,先不要就纠结这个函数能够显示。
回复

使用道具 举报

1

主题

6

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2016-3-17 10:35:00 | 显示全部楼层

回 eric2013 的帖子

eric2013:换个人别的控件试试,先不要就纠结这个函数能够显示。
 (2016-03-17 10:20) 
好吧,我是有解决方法的,只是移植的是你家的代码,想问个究竟
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2016-3-17 11:13:02 | 显示全部楼层

回 mai0760 的帖子

mai0760:好吧,我是有解决方法的,只是移植的是你家的代码,想问个究竟 (2016-03-17 10:35) 
这个问题我还真没有遇到过哦。
回复

使用道具 举报

1

主题

6

回帖

1

积分

新手上路

积分
1
 楼主| 发表于 2016-3-17 12:39:06 | 显示全部楼层

回 eric2013 的帖子

eric2013:这个问题我还真没有遇到过哦。 (2016-03-17 11:13) 
我用了个简接的方法解决了,谢谢
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2016-3-17 14:39:34 | 显示全部楼层

回 mai0760 的帖子

mai0760:我用了个简接的方法解决了,谢谢 (2016-03-17 12:39) 
好的[s:142]
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 17:22 , Processed in 0.208708 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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