适用于极小屏幕的5×5像素字体

Hacker News Top 工具

摘要

一款为8位微控制器和微型OLED屏幕手工打造的5×5像素字体,仅占用350字节。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/04/22 17:32

# 5×5 像素字体,给超小屏幕用(Mauryczy 的博客) 来源:https://maurycyz.com/projects/mcufont/ **2026-04-18**—**2026-04-20**([编程](https://maurycyz.com/tags/programming/)) 用这个字体写的示例文本 [字体数据(C 头文件)](https://maurycyz.com/projects/mcufont/mcufont.h) 所有字符都落在 5 像素见方内,画在 6×6 网格上也安全。设计原型是 lcamtuf 的 5×6 font-inline.h,而它又受 ZX Spectrum 的 8×8 字体启发。 **5×5 是“不牺牲可读性”的最小尺寸:** - **2×2**:不可能。 - **3×3**:技术上能画,但完全没法读。 - **4×4**:画不出像样的“E”“M”或“W”。 - **5×5**:就是本字体。 其实 5×5 已经能让大部分小写字母再缩一格,从而与大写视觉上区分开。 **更窄的 4×5 或 3×5 也能做**,但得牺牲 M、带点的 0,还会让 U/V/Y 难以分辨。 并非“因为几个字母必须 5 宽就全部 5 宽”的艺术选择……而是等宽让编程简单得多:屏幕上的字符串长度永远是字符数×6。 这也让紧凑布局更安全:不用担心“8978”比“1111”长而导致数字溢出。 **整套字体只占 350 字节**,非常适合 AVR128DA28 这类 8 位单片机(16 kB RAM)。它们便宜、低功耗、抗折腾……就是图形能力弱: 哪怕 384×288 这种低分屏也有 11 万像素,远超 AVR 内存。 ……可大多数项目根本用不到那么多像素。160×128 或 128×64 的 OLED 更便宜、更实用——但得靠手绘、省点的字体才能用好。 **作为对比,这是同尺寸的矢量字体:** 电脑屏幕上超小字号截图,糊成一团。 实际 6 像素高,但字母更窄,我就认了。 抗锯齿、几兆代码、一兆字库,还是比不过 350 字节的手雕像素。 ## 真正的**像素**: 像素不是完美正方形,所以字体在真屏上不会像本文顶部渲染图那样。这是实机照片: 硬件实拍图 我挺喜欢子像素带来的“伪投影”效果。单色屏不会有,但字体依旧比你想象的顺滑。 像素间隙帮“e”“g”卖了个关子,不过同样的效果也允许…… ## 更**小**的字体: 5×5 是无妥协的最小值,但 3×5 还能看: 这个尺寸有 32 768 种字形(27 904 个不同)。“M”“W”“Q”残了,但 O 和 0 还能区分。真想多塞 50% 列时可以考虑。 这都能读,那**3×4**呢? 这个尺寸有 4 096 种字形(3 392 个不同) 大小写无法区分,我直接选最顺眼的那套。数字也受损,但凑合能用。 **3×3** 如何? 这个尺寸有 512 种字形(400 个不同) 数字损失最大,字母无重复,还能认。 放到真机上反而好看: 还是太大?那**2×3**: 这个尺寸有 64 种字形(44 个不同) 开始离谱,大多数字母认不出,还有不少重复。最后一行是“Hello World”,看出来了吗? 把比例换成**3×2**好不少: 这个尺寸有 64 种字形(44 个不同) 模拟像素网格 横向细节多的字母(M、W、N、Q、G、P 等)比纵向细节多的(E、F)多。最后一行是“you can probably read this”,眯眼或缩放下能读。 …… completeness 起见,**2×2**: 这个尺寸有 16 种字形(10 个不同) 理论上 16 种 2×2 图案,其中一张空白,5 张只是平移拷贝,剩 10 张,刚好够做数字……但跟原字形毫无关系,更像暗号而非字体。 ## *相关*: - /projects/mcufont/mcufont.h(https://maurycyz.com/projects/mcufont/mcufont.h):5×5 字体。 - /projects/mcufont/test.c(https://maurycyz.com/projects/mcufont/test.c):字体预览程序。 - https://lcamtuf.coredump.cx/soft/embedded/font-inline.h:原版字体。 - https://moonbench.xyz/projects/tiny-pixel-art-fonts/:更多超小像素字体。

相似文章

几个有趣的现代像素字体

Hacker News Top

本文介绍了几种现代像素字体,包括 Analog Mono、Coral Pixels、Two Slice 和 Geist Pixel,讨论了它们的设计特色以及对 1990 年代亚像素渲染技术的怀旧情怀。

一款微型电子阅读器

Hacker News Top

作者分享了他们使用XTEINK X4的体验,这是一款非常小巧的电子阅读器,做工精良,运行极简的cross point固件,并使用OpenDyslexic字体进行舒适的休闲阅读。

我打造了一个袖珍Macintosh

Jeff Geerling

使用运行Pico Micro Mac固件的Raspberry Pi Pico打造了一个袖珍Macintosh,具备VGA输出和USB键盘/鼠标。

C64 Dead Test 字体

Hacker News Top

对 C64 Dead Test 诊断卡中使用的独特字体的详细探索,包括其字符集、一个彩蛋以及可下载的字符 ROM。