ESP32 带字库显示中文终极方案

在持续的试错和进步之间发布过下面内容:

TFT屏幕在arduino (esp 32)下的驱动,汉字显示和字库比较_arduino gc9a01显示汉字-CSDN博客

在esp32(esp8266) 提供软字库显示中文的解决方案_tft_espi汉字-CSDN博客

 单片机上软字库换32进制存储,空间占用少20%-CSDN博客

少走弯路:单片机使用点阵字体通过像素化的正确获取-CSDN博客

字体像素化很多都是错的-CSDN博客 

目前迎来了大结局:这个在esp32,esp8266上显示中文的方案已经做到了最优,项目被开源到了

GitHub - StarCompute/tftziku: 这是一个通过单片机在各种屏幕上显示中文的解决方案

调用方式被优化,各种注释被加进去,存储编码从16进制进化成了终极的64进制,已经不能再调整进制了。

字库生成后自动上传到单片机等等,反正能做的优化全做了。

不论要使用GB2312整体字符集还是自定义部分中文,整体便捷性都基本达到了最优,这是其他方案无法替代的。

下面是不同字号,不同编码方式宋体字符在GB2312的字库大小对比。

字号16进制(KB)32进制(KB)64进制(KB)
12302257213
14404331287
16507419360

 这个大小可满意?要知道最初接触这块内容,使用其他方案可是1000K左右啊!!!有兴趣的同学不妨了解一下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/626866.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jar包热加载原理

第一次加载时,记录jar包的更新时间 lastModified jarLoader.getURLs()[0].openConnection().getLastModified(); 第二次加载时,比较jar的更新时间和第一次jar包更新时间,若不一致,说明jar包更新过了 if (jarLoader.getLastModi…

家用小型洗衣机哪款性价比高?好用的内衣洗衣机推荐

现在大多数的上班族,面临的都是早九晚六的工作,而且工作完下班回家还是面对各种各样的家务,特别是清洗需要换洗的洗衣,属实是有点辛苦了。可能很多人为了方便,每次洗衣服的都是把一堆衣服直接丢进洗衣机,直…

EVE-NG的环境导入IOL组件

IOL或IOS On Linux,也称为IOU或IOS On Unix。IOL是一个模拟器,一般仅思科使用。IOL指为i386架构编译的Linux版本。IOU指为Sparc架构编译的Unix(Solaris)版本。由于IOL是内部IOS版本,因此IOL只能由Cisco授权客户使用。需…

UniApp+Vue智慧工地信息化管理云平台源码(支持多工地使用)

智慧工地建设的意义 1、提高工程效率 智慧工地可以通过数字化手段,将工地的各个方面进行数字化存储和管理,从而实现的实时监测和共享。这可以大大提高工程的效率,减少工程中的人工干预,并且可以为后续的工程维护和升级提供便利。…

c++中的以及链表的基础使用

c中的& 通俗的立减即为对一个变量起别名。(是和指针有区别的) 以下为两个示例程序: 通过&代替了以往对地址的传递。从而实现了对a和b的交换。 p为a的别名,对p操作即为对a操作。故最后输出a的值为10. 链表的基础应用 链…

**FutureTask应用源码分析**(一)

1.1 FutureTask介绍 FutureTask是一个可以取消异步任务的类。FutureTask对Future做的一个基本实现。可以调用方法区开始和取消一个任务。 一般是配合Callable去使用。 异步任务启动之后,可以获取一个绑定当前异步任务的FutureTask。 可以基于FutureTask的方法去取消…

Windows11搭建Python环境(2)- Anaconda虚拟环境中安装Git

在搭建MetaGPT运行环境过程中,使用了Anaconda虚拟环境,在运行MetaGPT时出现错误: 可以看到是没有找到git指令。 在Windows上安装Git,可以直接去官网下载.exe文件,然后安装即可。 但是上面安装完成后,是无…

三方接口对接常见数据处理方式汇总

文章目录 数据请求格式application/json接收发送 multipart/form-data接收发送 application/x-www-form-urlencoded接收发送 text/xml接收发送 Request请求中各个数据载体获取方法HeaderParameterInputStreamAttribute 二次封装HttpServletRequest参考 验签与加密 日常开发中&a…

【mfc/VS2022】绘图工具设计-绘制基本图元1

基于:https://blog.csdn.net/weixin_51599044/article/details/111741111 实现的功能: 绘制图元的方法: 前5种图元的菜单项均在“绘制”菜单里。 1.直线:按下左键作为起点,按住左键拖动鼠标到你想设定的终点,然后放开…

使用Map.clear()、List.clear()方法,清空时注意!

对 Map、List 对象进行清空操作时,常常会使用 clear() 方法。 例如,清空 Map Map map new HashMap();map.put("key1","value1");map.put("key2","value2");System.out.println(map.size()); //2map.clear();Sy…

.gitignore文件设置了忽略但不生效,git提交过程解析

这里写目录标题 第一章、gitignore文件设置了忽略路径,但是不生效1.1)原因1.2)解决 第一章、gitignore文件设置了忽略路径,但是不生效 1.1)原因 在初次提交代码的时候,没有进行文件忽略,某些文…

【Python_PySide6学习笔记(三十一)】基于PySide6实现自定义串口设备连接界面类:可实现串口连接断开、定时发送等功能

基于PySide6实现自定义串口设备连接界面类:可实现串口连接关闭、定时发送等功能 基于PySide6实现自定义串口设备连接界面类:可实现串口连接关闭、定时发送等功能前言一、界面布局二、串口相关功能实现三、完整代码四、调用方法五、实现效果基于PySide6实现自定义串口设备连接…

快慢指针-Floyd判圈算法

对于环形链表是否存在环的做法,普通算法可以通过额外Hash数组来存储链表元素,直到Hash数组中出现重复元素。时间复杂度O(n),空间复杂度O(n) Floyd判圈算法通过利用快慢指针的移动来实现,时间复杂度O(n)&am…

hash 路由和 history 路由的区别

Hash 路由(Hash Routing): URL 结构: 使用URL中的哈希部分(#)来表示不同的路由。例如,http://example.com/#/page1。实现方式: 前端路由器通过监听 window.onhashchange 来判断路由的…

Java进阶之旅第三天

Java进阶之旅第三天 文章目录 Java进阶之旅第三天TreeMap特点:题目 使用TreeMap进行数据统计题目: TreeMap 特点: 1.TreeMap根TreeSet底层原理一样,都是红黑树结构2.由键决定特性: 不重复,无索引,可排序3.可排序: 对键进行牌序注意: 默认按照键的从小到大进行排序,也可以自己…

【备战蓝桥杯】今天给大家整点解压的~

【备战蓝桥杯】今天给大家整点解压的~ 蓝桥杯备赛 | 洛谷做题打卡day8 文章目录 【备战蓝桥杯】今天给大家整点解压的~ 蓝桥杯备赛 | 洛谷做题打卡day8[NOIP2017 普及组] 成绩题目背景题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 提…

【C语言编程之旅 1】刷题篇-初识c语言

文章目录 第一题答案及解析 第二题答案及解析 第三题答案及解析 第四题答案及解析 第五题答案及解析 第六题答案及解析 第一题 答案及解析 C语言中内置类型包括: char //字符数据类型 short //短整型 int //整形 long //长整型 long long //更长的整形 float //单精…

ArcGIS Pro 拓扑编辑和常见一些拓扑错误处理

7.4 拓扑编辑 拓扑编辑也叫共享编辑,多个数据修改时,一块修改,如使用数据:chp7\拓扑检查.gdb,数据集DS下JZX、JZD和DK,加载地图框中,在“地图”选项卡下选择“地图拓扑”或“ds_Topology(地理数据库)”&…

Oracle-java下载、开源/商业许可证(收费、免费说明)、版本发布日志

Oracle-java下载、开源/商业许可证(收费、免费说明)、版本发布日志 下载开源/商业许可证(收费、免费说明)java8版本发布日志以上是一般情况,具体的以官网发布信息为准 下载 下载地址:https://www.oracle.c…