打印
[应用相关]

TouchGFX基础:显示中文

[复制链接]
898|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
使用 TouchGFX Designer 的textArea控件很容易显示不同字体的文字,可是如果想显示中文,则需要做相应的配置,否则会出乱码,见下面这个例子:




如上图,添加一个textArea控件, 输入一串文字:“你好 TouchGFX”,在Designer中中文是可以正常显示的。

使用特权

评论回复
沙发
peripheral|  楼主 | 2020-6-23 18:52 | 只看该作者

同时,特意将40号大小的Large字体的 Fallback Character 属性由默认的 ? 改为 * 号(后面会看到它的作用),Ctrl+S 保存工程,然后 Browse Code,在VC环境中编译、运行,结果如下:

使用特权

评论回复
板凳
peripheral|  楼主 | 2020-6-23 18:53 | 只看该作者
“你好”2个中文字没有显示出来呀?!对应的,显示了2个 * 号(这正是图二中配置的)!难道是VC模拟器的问题?用IAR重新编译、烧写到 STM32F769I-DISCO 开发板中(如何在IAR中正确烧写片外flash,见上一篇**),结果也是乱码:

使用特权

评论回复
地板
peripheral|  楼主 | 2020-6-23 18:53 | 只看该作者
原因在哪里?

回到Designer中,这里要重点说说 Typography 这个概念,网络上一般翻译为 “字体排印” ,我称之为 “字体类”,它包含了一种字体的名称、大小、色深、通配符等属性,TouchGFX中显示的任何文字,不论英文还是中文,必定属于某一种字体。

使用特权

评论回复
5
peripheral|  楼主 | 2020-6-23 18:54 | 只看该作者
只是,Designer默认的任一 字体类 的字体是 Verdana ,这是一种西文字体,是不支持中文显示的,所以造成乱码:

使用特权

评论回复
6
peripheral|  楼主 | 2020-6-23 18:54 | 只看该作者
图中,字体类Large 的 Font 是 Verdana,只能显示西文(但Designer的界面上能显示 “你好” 这2个中文字,呵呵了)。为了显示中文,就得设定中文字体 ---- 创建一个字体类,并且将它的 Font 设置为一种中文字体。

使用特权

评论回复
7
peripheral|  楼主 | 2020-6-23 18:55 | 只看该作者
在图中,点击绿色框框中的 ADD NEW TYPOGRAPHY 按钮,弹出一个创建字体类的窗口:

为新字体类取个名字:Typography_cn,在 Font 下拉列表中,选择 YouYuan,即 幼圆字体 (当前的Designer 4.10版本界面貌似不支持中文,呵呵了)即可

使用特权

评论回复
8
peripheral|  楼主 | 2020-6-23 18:56 | 只看该作者

在textArea控件中重新设置Typography:

使用特权

评论回复
9
peripheral|  楼主 | 2020-6-23 18:56 | 只看该作者
保存工程,再次启动VC、运行模拟器,中文显示正常了:

使用特权

评论回复
10
peripheral|  楼主 | 2020-6-23 18:58 | 只看该作者
这是下载到目标板运行的情况:

使用特权

评论回复
11
peripheral|  楼主 | 2020-6-23 18:58 | 只看该作者
TouchGFX是支持多语言界面的(multi language interfaces),即界面可以在多个语言之间切换,需要创建新的 Resource :

如何实现多语言支持,将来另文介绍,本文完。

使用特权

评论回复
12
peripheral|  楼主 | 2020-6-23 19:00 | 只看该作者
补记:有关中文字体的扩充内容,请见**:《TouchGFX基础:再谈中文显示》。

使用特权

评论回复
13
peripheral|  楼主 | 2020-6-23 19:00 | 只看该作者

作者:海东青电子
链接:https://www.jianshu.com/p/e5d3023125d8
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

使用特权

评论回复
14
heimaojingzhang| | 2020-7-10 14:13 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
15
keaibukelian| | 2020-7-10 14:13 | 只看该作者
我好像在哪里看见过这个帖子

使用特权

评论回复
16
labasi| | 2020-7-10 14:14 | 只看该作者
楼主辛苦了

使用特权

评论回复
17
paotangsan| | 2020-7-10 14:14 | 只看该作者
我也想用这个工具

使用特权

评论回复
18
renzheshengui| | 2020-7-10 14:14 | 只看该作者
界面很漂亮

使用特权

评论回复
19
香水城| | 2020-7-10 19:16 | 只看该作者
谢谢分享

使用特权

评论回复
20
pklong| | 2020-7-10 22:16 | 只看该作者
TouchGFX效率怎么样呢   

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

32

主题

438

帖子

2

粉丝