Arduino ESP8266 新建字库 开发-TFT_eSPI库学习 SD²修改字体皮肤

学习目标:

使用自己建的文字库,正确的输出到TFT屏幕,SD²字体皮肤修改


学习内容:

  1. 新建字库
  2. Arduino TFT_eSPI库学习使用
    先上图
    在这里插入图片描述

1.新建字库:

1. 工具链接

链接:https://pan.baidu.com/s/15QirgylK-ahK2wDEnV7YBQ?pwd=5985
提取码:5985

2.操作步骤

大概流程:选择字体文件(如宋体、黑体等),在指定字体文件中提取你需要的文字,因为如果将整
个字体文件做成字库,将导致 ESP32 的 Flash 存不下,因此只提取必要的部分,提取出来后,会重
新生成字体文件,然后使用 Processing 软件,将字体文件转换成 vlw 格式,转换过程中需要设置转
换后的字体大小,最后将 vlw 转换成 hex 文件,将 hex 做成一个 h 头文件即可,具体步骤如下:
【1】在 C:\Windows\Fonts 路径下,选择需要的字体文件,并进行如下操作:(黑体文件名:simhei.ttf)
在这里插入图片描述

复制的路径也可以自定义,推荐在桌面新建文件夹,便于整理
【2】打开“自提提取.exe”软件,随后根据下图操作:
在这里插入图片描述

【3】生成 TTF 文件之后,自动弹出的文件夹中找到红色箭头所指的文件,将其复制至
Create_font\data 路径下
在这里插入图片描述

【4】打开“processing.exe”,随后在 processing 中根据下图打开“Create_font\Create_font.pde
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

【5】点击运行后,会开始自动转换,并弹出下列窗口,红色箭头处就能看到 vlw 文件
在这里插入图片描述

【6】到这里,字体的提取以及制作工作基本完成,现在还差最后一步,将 vlw 文件转换成 hex 文件
打开链接:http://tomeko.net/online_tools/file_to_hex.php?lang=en
在这里插入图片描述
在这里插入图片描述

【7】创建.h 文件,按下图做程序框架,其中 PROGMEM 必须加上,作用是该数组数据存至 Flash 用户程序中而非 RAM,用来减少 RAM 的占用。最后将 vlw 转换成 hex 数据粘贴至红箭头内
在这里插入图片描述


2.Arduino TFT_eSPI库学习使用

  clk.setColorDepth(8); //设置颜色分辨率,
  clk.loadFont(ROCCB_60);//设置字体这里就是.H文件里面的字体
  if(hour()!=Hour_sign || reflash_en == 1)//时钟刷新
  {
  clk.createSprite(85, 85); //创建一块区域,长为85,高为85的区域
  clk.fillSprite(bgColor); //该区域填充黑色,bgColor是0x0000
  clk.setTextDatum(CC_DATUM); //设置文字模式
  clk.setTextColor(TFT_BLUE, bgColor);//文字填充白色,背景黑色
  clk.drawString(String(hour()/10),10,40);
  //参数解读(显示的数据;在创建区域的哪个X位置;在创建区域的Y位置)  
  clk.drawString(String(hour()%10),50,40);
  clk.drawString(":",75,30);
  clk.pushSprite(5,75);  //推送创建的区域到屏幕(推送屏幕的起始位置为屏屏幕坐标的(5,75))
  clk.deleteSprite();//释放ROM
    Hour_sign = hour();
  }

以后SD² 想换字体皮肤直接更换库ROCCB_60.h中的内容即可

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值