Repository navigation
Fonts
The checked-in device font registry contains helvetica in regular and bold weights. Send that family explicitly in every text span; the parser and some library defaults still name sans, which is not bundled.
To add fonts, place TrueType files in Arduino/src/font/assets/ using one of these names:
Family-Regular.ttfFamily-Bold.ttf-
Family.ttffor a regular-only family
The JSON family is the lowercase filename family. News-Sans-Bold.ttf becomes "family": "news-sans", "weight": "bold".
PlatformIO runs scripts/platformio_fonts.py before building, and the emulator runs the same generator during CMake configuration. Rebuild each target after changing font assets. Fonts are embedded in firmware flash; adding large fonts increases firmware size. Include redistribution licenses alongside new assets.
If a family has only a regular file, the renderer can synthesize bold. Font size must be 6–96 pixels. Glyph coverage, metrics, and line breaks depend on the actual TTF, so changing a font can change a layout.
The PHP and Java libraries also provide raster-text helpers which emit image commands using server-side font files. Those paths use different rendering engines and need not match device text pixel for pixel.