硬汉嵌入式论坛

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

[ThreadX全家桶] 通过程序显示中文字符

[复制链接]

17

主题

88

回帖

139

积分

初级会员

积分
139
发表于 2020-10-14 15:35:15 | 显示全部楼层 |阅读模式
一般来说,我们需要用到中文字符,会直接在GUIX Stdio中设置好,将其生成对应的编码,如下:
GX_CONST GX_UBYTE display_1_STRING_10_Chinese[] = {0xe7, 0xac, 0xac, 0xe4, 0xb8, 0x80, 0xe4, 0xb8, 0xaa, 0xe6, 0x8e, 0xa7, 0xe4, 0xbb, 0xb6, 0x00};

那如果需要在程序中定义中文字符串怎么显示出来?
如下:
char *String="安富莱";
怎么将其显示呢?
回复

使用道具 举报

17

主题

88

回帖

139

积分

初级会员

积分
139
 楼主| 发表于 2020-10-14 20:08:00 | 显示全部楼层
我能想到的办法是借助GUIX STDIO生成字符,再通过ID调用,有没有更好的办法呢?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107442
QQ
发表于 2020-10-15 02:55:47 | 显示全部楼层
外置全字库。
回复

使用道具 举报

613

主题

3067

回帖

4926

积分

至尊会员

积分
4926
发表于 2020-10-15 09:15:58 | 显示全部楼层
把需要 显示的中文字符 使用 guix studio 单个 生成编码,然后在 程序中

const char * string = "安富莱"

最后需要 把这个 安富莱 使用 gbk 转 uft8 编码的方法转成 uft8 吗,最后再把这个 编码丢给 gx.. 相关的函数显示出来,我目前就是这样捣鼓的,

全字库 的 guix 目前不会
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107442
QQ
发表于 2020-10-15 10:36:51 | 显示全部楼层
hpdell 发表于 2020-10-15 09:15
把需要 显示的中文字符 使用 guix studio 单个 生成编码,然后在 程序中

const char * string = "安富 ...

如果继续采用楼主那种的,直接设置const char * string = "安富莱"所在源文件的文件编码属性为UTF-8即可

这个跟emWin是一个套路。
回复

使用道具 举报

17

主题

88

回帖

139

积分

初级会员

积分
139
 楼主| 发表于 2020-10-15 10:44:26 | 显示全部楼层
eric2013 发表于 2020-10-15 10:36
如果继续采用楼主那种的,直接设置const char * string = "安富莱"所在源文件的文件编码属性为UTF-8即可
...

那我还是觉得我直接用GUIX预生成,在需要使用设置一下字体,通过ID获取字符串就可以用了
回复

使用道具 举报

613

主题

3067

回帖

4926

积分

至尊会员

积分
4926
发表于 2020-10-15 10:54:19 | 显示全部楼层
eric2013 发表于 2020-10-15 10:36
如果继续采用楼主那种的,直接设置const char * string = "安富莱"所在源文件的文件编码属性为UTF-8即可
...

guix studio 貌似也还是需要生成 utf8 对应的字库码才行啊,不然 显示出来的也还是空白的,

所以最终的解决方法 还得 搞全字库才行啊 ,目前 那个 studio 生成的 bin 文件字库也不知道该如何使用,

继续等待大神的 教程哟 。。。
回复

使用道具 举报

3

主题

38

回帖

47

积分

新手上路

积分
47
发表于 2020-10-19 09:33:27 | 显示全部楼层
hpdell 发表于 2020-10-15 10:54
guix studio 貌似也还是需要生成 utf8 对应的字库码才行啊,不然 显示出来的也还是空白的,

所以最终 ...

GUIX可以直接导出全字库,你将项目工程文件编码格式设置成utf-8就行
回复

使用道具 举报

613

主题

3067

回帖

4926

积分

至尊会员

积分
4926
发表于 2020-10-19 17:29:37 | 显示全部楼层
sunpeng123 发表于 2020-10-19 09:33
GUIX可以直接导出全字库,你将项目工程文件编码格式设置成utf-8就行

貌似习惯了 工程使用 gbk 码啊
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107442
QQ
发表于 2020-10-20 01:43:15 | 显示全部楼层
hpdell 发表于 2020-10-19 17:29
貌似习惯了 工程使用 gbk 码啊

你之前emWin也是一直用的GBK吗。
回复

使用道具 举报

613

主题

3067

回帖

4926

积分

至尊会员

积分
4926
发表于 2020-10-20 08:40:32 | 显示全部楼层
eric2013 发表于 2020-10-20 01:43
你之前emWin也是一直用的GBK吗。

是的,貌似使用 gbk 码在做键盘输入中文时比较好处理,而且也可以插入中文
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107442
QQ
发表于 2020-10-20 15:20:07 | 显示全部楼层
hpdell 发表于 2020-10-20 08:40
是的,貌似使用 gbk 码在做键盘输入中文时比较好处理,而且也可以插入中文

好的,后面看看要不要也做个GBK方式的。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-1 05:44 , Processed in 0.187160 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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