ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

LCD Image Converter 上手指南:一条命令把 PNG 变成能烧进 MCU 的 C 数组

2026/8/22 13:04:21 拓冰建站 浏览量
LCD Image Converter 上手指南:一条命令把 PNG 变成能烧进 MCU 的 C 数组 LCD Image Converter 上手指南一条命令把 PNG 变成能烧进 MCU 的 C 数组【免费下载链接】lcd-image-converterTool to create bitmaps and fonts for embedded applications, v.2项目地址: https://gitcode.com/gh_mirrors/lc/lcd-image-converterLCD Image Converter 是一个嵌入式图像转换、LCD 位图转换工具输入 PNG输出能直接编译进 MCU 的标准 C 源文件帮你省掉手算像素排布、手写压缩代码的那几天。它帮你省掉的活手动把 LCD 位图转成 C 数组场景是这样的你手上有一张 240×320 的 UI 图标 PNG要烧到 STM32 的 TFT 屏上。老路子里你得先弄清楚屏幕控制器怎么打包像素——RGB565、每 16 位一个像素、两个像素塞进一个 32 位字再决定字节序是大端还是小端想要压缩还得自己写 RLE自己处理游程边界等 C 数组敲完只要排布错一位整屏花屏再从头查。这个工具把这些活收进一条命令。你选一个预设预设里定义了像素格式、扫描方向、字节序这些底层细节给出输入输出路径拿回一个 .c 文件直接进工程。环节手动做用它做像素排布、字节序翻控制器手册自己写打包逻辑一个预设名搞定RLE 压缩自己实现算法、自己处理边界内置开关一个参数输出 C 数组手敲十六进制位数一多必出错标准 C 源码改图重跑即可最值钱的 3 个能力RLE 位图压缩位图缩到原来的 40%65%它做了什么对图像中连续相同的像素段记录值 次数数据块支持 8/16/24/32 位压缩逻辑在classes/compression/rlecompressor.cpp里最少相同像素数阈值可调——阈值大一点压缩率高解码稍复杂。你拿到什么大面积纯色背景的位图嵌入式 UI 里最常见的类型通常能压到 40%65% 的体积纯色区域越多省得越多flash 预算紧张时这笔钱很实在。一条命令输出标准 C 源码它做了什么classes/parser/下的转换引擎负责全部底层脏活——像素格式转换、位级打包、扫描方向、字节序大小端都支持像素深度 132bpp 全覆盖输出可以是 .c 源码也可以是二进制文件。你拿到什么生成的文件直接编译进工程数组名由 doc-name 控制格式不符合你的屏幕库时用 template 参数挂自定义模板。UI 改版后重跑一次命令数组自动重新生成不用碰任何十六进制。MCU 字体按需生成只烧用到的字符它做了什么把指定字体、指定字号的字符逐个栅格化成位图--chars-list参数让你精确指定包含哪些字符支持 UTF-8 编码和完整 Unicode 范围。你拿到什么设备只显示数字和几个符号时整份 ASCII 字库纯属浪费内存。按需生成一般能把字库体积砍掉一半以上省下的 flash 是实打实的。最小可跑通路径3 步把 PNG 转成 C 数组你只需要 ①②③① 拿到程序用官方下载或自己编译git clone https://gitcode.com/gh_mirrors/lc/lcd-image-converter后执行qmake make② 配好一个预设在图形界面里选像素格式、扫描方向、字节序存个名字③ 跑这条命令lcd-image-converter --modeconvert-image \ --inputicon.png \ --outputicon.c \ --doc-nameicon \ --preset-namelcdR4G5B4跑完打开 icon.c就是能直接用的 C 数组。什么场景值得接 怎么配场景关键配置预期效果低功耗单色屏1bpp 单色预设 RLE 抖动存储比不压缩再省约 30%STM32 / ESP32 的 TFT16bit RGB565 预设字节序对齐控制器一条命令出片像素排布零调整彩屏但 flash 紧张24bit RGB888 RLE选 32 位数据块大面积纯色区域省一半以上状态栏、数字显示字体按需生成--chars-list只烧用到的十几个字符UI 迭代频繁命令行 预设复用改完图重跑命令数组自动重建值不值得用看这一节就够适合直接用需要先验证屏幕像素格式是常见的 1/4/8/16/24/32bpp控制器打包方式特殊先转张小图对着手册核对输出十六进制图像更新频繁想彻底告别手敲十六进制需要非常规深度或自定义输出结构先自己试写模板字体只用到有限字符集中文界面字符量大先生成一遍确认总尺寸在 flash 预算内如果项目就是给 MCU 烧位图和字库拿一张样图跑一遍核对字节序和输出格式对得上就可以停掉手敲十六进制了。【免费下载链接】lcd-image-converterTool to create bitmaps and fonts for embedded applications, v.2项目地址: https://gitcode.com/gh_mirrors/lc/lcd-image-converter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考