查看: 471|回复: 15

[经验] 分享自己整理的uCGUIi计入自定义中文字库资料

[复制链接]

7

主题

0

好友

215

积分

秀才

Rank: 3Rank: 3

  • TA的每日心情
    开心
    2016-7-30 08:42
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-7-11 18:02:03 |显示全部楼层
    本帖最后由 wbeast 于 2016-7-12 08:58 编辑

    uCGUI自带的字体文件中只包含英文及标点,想要显示中文字体最简单的
    方法便是自己动手添加。先来看一下ucGUI 中自带字体文件的取模方式,如图1所示

    QQ截图20160708140440.png
    其中用X 表示的部分是需要在屏幕上显示的一个像素点,下划线的部分则
    不显示,uCGUI 中自带的字体都是基于这个方法来显示的。其实图1 中,每一
    个逗号前都是1 个字节的数据,所以我们可以将图1 的取模方式改为如图2 所示的情况,这样也是正确的,当然也可以改成全16 进制的表示方式,但显示效果没有图1 来的直观。下面进入具体实现步骤。
    步骤1:下载字体生成软件
    步骤2:首先需要一个字体生成软件,该软件要能制作出如图1 所示的字体取模效果,我使用的是ucGUI 字体生成器V3.0,界面如图3 所示。
                                                                 QQ截图20160708140459.png


    图三



    步骤3:开始制作自己想要的字体文件
    如图四所示


    QQ截图20160708140512.png


    图四
    步骤四:在GUI/Font文件夹中创建一个.c文件,这里定义为Font.c(文件名可以随意更改,只要不和库文件名冲突就可以)如图5所示



    QQ截图20160708140522.png

    图5
    步骤五:把Font.c添加到keil工程目录下,如图六所示



    QQ截图20160708140529.png

    图六

    步骤六:修改程序
    将Font.c文件中里面的数组加上const修饰,如图七所示


    QQ截图20160708140539.png

    图七



    步骤七:在KEIL工程中找到GUI.H
    在GUI.h中添加一段代码,声明数组,该数组名就是Font .c文件中的最末尾数组的数组名,如图八所示


                                                                      QQ截图20160708140548.png

    图八
    步骤八:调用GUI_SetFont(&GUI_FontHZ16)函数,如图九所示

                                                                    QQ截图20160708140601.png

    图九
    步骤九:编译,如果没有出现错误,就可以下载到开发板,显示效果如图十所示

                                                    QQ截图20160708140618.png

    ucGUI字体生成器 V3.0.rar (225.65 KB, 下载次数: 9)
    ucGUI添加自定义汉字字库.pdf (633.99 KB, 下载次数: 11)

    回复

    使用道具 举报

    553

    主题

    3

    好友

    1万

    积分

    翰林

    Rank: 7Rank: 7Rank: 7

  • TA的每日心情
    擦汗
    2014-2-12 10:49
  • 签到天数: 150 天

    [LV.7]常住居民III

    发表于 2016-7-12 08:57:45 |显示全部楼层
    好分享!
    回复

    使用道具 举报

    7

    主题

    0

    好友

    215

    积分

    秀才

    Rank: 3Rank: 3

  • TA的每日心情
    开心
    2016-7-30 08:42
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-7-12 14:35:07 |显示全部楼层
    stary666 发表于 2016-7-11 18:12

    回复

    使用道具 举报

    7

    主题

    0

    好友

    215

    积分

    秀才

    Rank: 3Rank: 3

  • TA的每日心情
    开心
    2016-7-30 08:42
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-7-12 14:35:40 |显示全部楼层
    zada小明 发表于 2016-7-12 08:57
    好分享!

    好东西,就是要分享
    回复

    使用道具 举报

    7

    主题

    0

    好友

    215

    积分

    秀才

    Rank: 3Rank: 3

  • TA的每日心情
    开心
    2016-7-30 08:42
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-7-12 14:36:34 |显示全部楼层
    stary666 发表于 2016-7-11 18:12

    好东西,就要分享
    回复

    使用道具 举报

    7

    主题

    0

    好友

    215

    积分

    秀才

    Rank: 3Rank: 3

  • TA的每日心情
    开心
    2016-7-30 08:42
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-7-12 14:37:08 |显示全部楼层
    stary666 发表于 2016-7-11 18:11

    好东西,就要分享
    回复

    使用道具 举报

    0

    主题

    0

    好友

    47

    积分

    白丁

    Rank: 1

    该用户从未签到

    发表于 2016-7-15 17:56:02 |显示全部楼层
    感谢分享!
    回复

    使用道具 举报

    0

    主题

    0

    好友

    34

    积分

    白丁

    Rank: 1

  • TA的每日心情

    2015-12-10 10:55
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2016-7-21 10:53:16 |显示全部楼层
    好分享,收藏支持
    回复

    使用道具 举报

    2

    主题

    0

    好友

    56

    积分

    禁止发言

  • TA的每日心情
    奋斗
    2016-8-16 13:58
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2016-8-4 14:34:54 |显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复

    使用道具 举报

    2

    主题

    0

    好友

    56

    积分

    禁止发言

  • TA的每日心情
    奋斗
    2016-8-16 13:58
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2016-8-4 14:35:57 |显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    回复

    使用道具 举报

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

    关闭

    站长推荐上一条 /6 下一条


    手机版|爱板网 |网站地图  

    GMT+8, 2016-12-4 12:02 , Processed in 0.157706 second(s), 19 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部