Faithful Rust port of Maurycy's mcufont.h — a 5x5 monospace pixel font (~350 bytes of bitmap data) covering A-Z, a-z, 0-9, and the punctuation set - + . , ? ! : = '. - no_std, forbid(unsafe_code), zero deps with default features. - Public glyph tables (UPPER / LOWER / DIGITS / SYMBOLS), SYM_* index constants, and a glyph(c: char) lookup. - Each glyph row is packed in bits 7..=3 MSB-first so the bytes are byte-for-byte compatible with embedded_graphics::ImageRaw. - Optional `embedded-graphics` feature exposes MCU_FONT (MonoFont<'static>), FONT_DATA, and McuGlyphMapping for drop-in use with MonoTextStyle / Text on any DrawTarget (SSD1306 over I²C, ST7735, etc.). - Per-category feature flags (upper / lower / numbers / symbols, all on by default) so users can drop unused glyphs from flash. Licensed CC BY-NC-SA 4.0, inherited from the upstream font data. An email is out to the upstream author asking for a permissive software license (MIT / Apache-2.0); if granted, the crate will be relicensed and a new version published. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
45 lines
1.8 KiB
Markdown
45 lines
1.8 KiB
Markdown
# Changelog
|
||
|
||
All notable changes to this project will be documented in this file.
|
||
|
||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||
|
||
## [Unreleased]
|
||
|
||
### Pending
|
||
|
||
- **Relicense.** An email is out to the upstream author requesting a
|
||
permissive software license (MIT / Apache-2.0) on the original C
|
||
source. If granted, this crate will be relicensed and the next release
|
||
will reflect the new terms. Until then, CC BY-NC-SA 4.0 applies.
|
||
|
||
## [0.1.0] - 2026-04-29
|
||
|
||
### Added
|
||
|
||
- Initial release. Faithful Rust port of Maurycy's `mcufont.h`
|
||
(<https://maurycyz.com/projects/mcufont/>) — a 5×5 monospace pixel
|
||
font, ~350 bytes of bitmap data, covering `A–Z`, `a–z`, `0–9`, and
|
||
`- + . , ? ! : = '`.
|
||
- `no_std`, `forbid(unsafe_code)`, zero dependencies with default
|
||
features.
|
||
- Public glyph tables: `UPPER`, `LOWER`, `DIGITS`, `SYMBOLS`.
|
||
- `glyph(c: char) -> Option<&'static Glyph>` lookup function.
|
||
- `SYM_*` index constants for direct symbol-table access.
|
||
- Feature flags: `upper`, `lower`, `numbers`, `symbols` (all on by
|
||
default) — disable individually to save flash.
|
||
- Optional `embedded-graphics` feature exposing `eg::MCU_FONT`
|
||
(`MonoFont<'static>`), `eg::FONT_DATA`, and `eg::McuGlyphMapping` for
|
||
drop-in use with `MonoTextStyle` / `Text` on any `DrawTarget`
|
||
(SSD1306 over I²C, ST7735, etc.).
|
||
- Glyph bytes packed in bits 7..=3 (MSB-first), bits 2..=0 zero —
|
||
layout matches `embedded_graphics::image::ImageRaw` so the same data
|
||
serves both APIs.
|
||
|
||
### Licensed under
|
||
|
||
- CC BY-NC-SA 4.0 (inherited from the upstream font data; see
|
||
`LICENSE`). Non-commercial use only, ShareAlike. See README for
|
||
implications and the pending relicense note.
|