PicoPixel

Werken met lettertypen

Maak LVGL-lettertypen van meegeleverde of eigen bestanden. Stel Arabisch, Hebreeuws en CJK-talen in en beperk het geheugenverbruik door alleen de benodigde tekens en groottes op te nemen.

EDEd
fontpicopixellvgl
BIJGEWERKT2026-05-29
01/07

Overzicht

Lettertypen voor een embedded apparaat moeten weinig geheugen gebruiken en snel te tekenen zijn. In deze handleiding maak je een LVGL-lettertype van een meegeleverd of eigen bestand. Je leest ook hoe je Arabisch, Hebreeuws, Chinees, Japans en Koreaans instelt en ongebruikte lettertypen opruimt.

PicoPixel met labels in het Cyrillisch, Thai, Chinees, Grieks, Koreaans, Japans en Arabisch. Links staan tien geladen lettertypen; rechts staan de labeleigenschappen.
▸ PicoPixel ondersteunt verschillende schriften — elk label gebruikt een ander lettertype en een andere taal.
02/07

Waarom moeten lettertypen worden geconverteerd?

Op je laptop beschrijft een lettertypebestand (zoals een .ttf of .otf) elke letter als een reeks wiskundige curven. Je computer heeft genoeg vermogen en geheugen om die curven soepel te tekenen op elke gewenste grootte.

Een klein apparaat (een ESP32, een smartwatch-chip, een kleine displaycontroller) kan dat doorgaans niet. Het heeft niet het geheugen of de verwerkingskracht om curven ter plekke opnieuw te tekenen. LVGL neemt daarom een andere aanpak: in plaats van curven slaat het elke letter op als een kleine vooraf getekende afbeelding (een bitmap) op een vaste grootte. Dat is veel lichter voor het apparaat om te verwerken.

PicoPixel zet het oorspronkelijke bestand voor je om naar LVGL-bitmaps. Jij kiest welke tekens en groottes worden opgenomen.

NOTE

Omdat elke letter vooraf getekend is op een vaste grootte, is een geconverteerd LVGL-lettertype vergrendeld op de gekozen grootte. Een 16px-lettertype kan niet worden opgerekt naar 32px en nog steeds scherp zijn. Als je tekst in twee verschillende groottes nodig hebt, maak je het lettertype in beide groottes aan (zie Een lettertype aanmaken hieronder, waar je meerdere groottes tegelijk kunt kiezen).

Daarom gebruiken lettertypen geheugen op je apparaat: elke letter, in elke grootte, neemt een beetje geheugenruimte in. Deze handleiding helpt je dat geheugenverbruik te beperken — door alleen de tekens en groottes op te nemen die je daadwerkelijk gebruikt.

03/07

Meegeleverde lettertypen en je eigen lettertypen

Wanneer je een lettertype aanmaakt, heb je twee beginpunten:

  • Bundled (meegeleverd) — een samengestelde set populaire, goed geteste lettertypen die direct klaar zijn voor gebruik: Noto Sans, Roboto, Open Sans, Montserrat, Poppins, Inter, Lato, Nunito, Source Sans 3, en meer. Dit zijn goede uitgangspunten voor de meeste projecten.
  • Upload (eigen bestand) — breng je eigen .ttf- of .otf-bestand mee. Gebruik dit wanneer je een specifiek merklettertype hebt of een lettertype dat tekens bevat die in de meegeleverde lettertypen ontbreken.
TIP

Als je je eigen lettertype uploadt, gebruik dan een statisch lettertypebestand (bijvoorbeeld Roboto-Regular.ttf) in plaats van een "variabel" lettertypebestand (zoals Roboto-VariableFont.ttf). Statische bestanden worden veel betrouwbaarder geconverteerd. Gewone .ttf-bestanden werken over het algemeen het beste.

Wat je ook kiest, er is een live voorbeeld zodat je je eigen tekst kunt typen en precies kunt zien hoe het eruit zal zien voordat je het aanmaakt.

04/07

Een lettertype aanmaken

Open het Create Font (lettertype aanmaken)-paneel en je ziet een kort formulier. Hier is wat elk onderdeel doet:

Het paneel Create Font met Doto Regular, een live tekstvoorbeeld, groottes 16 en 48 en de geavanceerde instellingen voor kleurdiepte, tekenbereiken en symbolen.
▸ Het paneel Lettertype aanmaken: kies een meegeleverd lettertype, bekijk een voorbeeld van je tekst, selecteer meerdere groottes tegelijk, en verfijn geavanceerde instellingen zoals bits per pixel en tekenbereiken.
  1. Kies je lettertype — selecteer een lettertype onder Bundled (en het gewicht, zoals Regular of Bold), of schakel naar het tabblad Upload en selecteer je eigen bestand.
  2. Font name (naam) — de naam die je ziet in de lettertypelijst van je project. Kies een herkenbare naam, vooral als je er meerdere hebt.
  3. Size (px) (grootte) — de pixelgrootte van het lettertype. Je kunt meer dan één grootte tegelijk selecteren (je kunt bijvoorbeeld meteen 16, 22 en 32 kiezen). Onthoud dat elke grootte afzonderlijk wordt gegenereerd, dus selecteer alleen de groottes die je echt zult gebruiken.
  4. Letters — kies welke set tekens je wilt opnemen: Standaard (basis-Engels), Latijn, Grieks, Cyrillisch, Hebreeuws, Arabisch, Thai, en nog meer. Zo vertel je PicoPixel welke letters van de taal je nodig hebt.
  5. Asian — een aparte optie voor Chinees, Japans en Koreaans. Deze hebben speciale behandeling nodig, behandeld in een eigen sectie hieronder.

Er is ook een Advanced-gebied voor fijnafstelling, inclusief Bits per pixel (hoeveel grijstinten elke letter gebruikt; hoger ziet er vloeiender uit maar neemt meer ruimte in; 4 is een goede standaard) en velden om exacte tekenbereiken of symbolen handmatig te specificeren. De meeste mensen hoeven dit nooit aan te raken.

TIP

Niet elk lettertype bevat elke taal. Als je een niet-Latijns schrift kiest en je voorbeeld lege vakjes toont in plaats van letters, ondersteunt dat lettertype het niet — schakel over naar een Meegeleverd lettertype dat is ontworpen voor dat schrift, of upload er een die het wel ondersteunt. PicoPixel waarschuwt je wanneer je een schrift kiest dat niet alle lettertypen ondersteunen.

06/07

Chinees, Japans en Koreaans

Het venster CJK Font Setup met uitleg over het beperken van de tekenset en het kiezen van een geschikt lettertype.
▸ Het CJK Font Setup-dialoogvenster verschijnt wanneer je een CJK-taal kiest en helpt je het bestand klein te houden.

CJK is de veelgebruikte afkorting voor Chinees, Japans en Koreaans. Deze talen zijn speciaal omdat ze veel tekens hebben — Koreaans heeft er ongeveer 11.000 en Chinees ruim meer dan 20.000. Onthoud dat elk teken vooraf wordt getekend en op het apparaat wordt opgeslagen. Het opnemen van een volledig CJK-lettertype kan megabytes toevoegen, wat simpelweg niet past op de meeste embedded apparaten.

De oplossing is om alleen de tekens op te nemen die je daadwerkelijk gebruikt. Een typische interface toont misschien maar een honderdtal verschillende tekens — en dat is klein in vergelijking.

Zo doe je het:

  1. Kies in de Asian-keuzelijst Korean, Chinese of Japanese.
  2. Zoek het Symbols-veld (in het gedeelte Advanced) en plak de werkelijke tekst die je interface zal weergeven — elk label, elke knop en elk bericht. PicoPixel neemt alleen een glyph op voor elk teken dat het daar vindt.
    • Om je op weg te helpen vult PicoPixel dit veld vooraf in met veelgebruikte interfacewoorden (zoals "Instellingen", "Bevestigen", "Annuleren", enzovoort) in de taal die je hebt gekozen. Voeg je eigen tekst toe.

Zo kan een lettertype van meerdere megabytes worden teruggebracht tot een paar honderd kilobytes.

WARNING

Alleen de tekens die je in Symbols opsomt worden opgenomen. Als je interface later een teken toont dat je niet hebt toegevoegd, verschijnt het als een leeg vakje. Wanneer je tekst verandert, kom terug en update het veld Symbols, en maak daarna het lettertype opnieuw aan.

TIP

Voor CJK geeft het uploaden van het specifieke lettertype dat je wilt (in plaats van te vertrouwen op een algemeen lettertype) je de meeste controle — en het plakken van een volledige, definitieve kopie van je interfacetekst zorgt ervoor dat er niets wordt gemist.

Koreaans is geselecteerd. Het veld Symbols bevat de Koreaanse interfacetekst, zodat alleen de benodigde tekens in het lettertype worden opgenomen.
▸ Plak elk stuk tekst dat je interface weergeeft in het veld **Symbols** — alleen die tekens worden in het lettertype verwerkt.
07/07

Opruimen: ongebruikte lettertypen verwijderen

Lettertypen nemen ruimte in, en het is makkelijk om er te verzamelen die je niet meer nodig hebt — vooral tijdens het experimenteren. Je weet bijvoorbeeld misschien niet zeker of 16px of 22px er beter uitziet, dus maak je beide aan en probeer je ze uit. Zodra je beslist hebt, is het andere alleen maar onnodig geheugengebruik.

Daarvoor heeft PicoPixel een opruimfunctie. In het Lettertypen-gedeelte van je assets staat een knop Remove unused lettertypen (ongebruikte lettertypen verwijderen). De functie controleert alle widgets en verwijdert alleen lettertypen die nergens worden gebruikt. Zo maak je met één klik ruimte vrij.

TIP

Dit is de makkelijke manier om met groottes te experimenteren. Maak een paar groottes aan, kijk welke er goed uitziet in je ontwerp, en klik dan op Remove unused lettertypen (ongebruikte lettertypen verwijderen) om de rest op te ruimen. Elk lettertype in de lijst toont zijn grootte- en kwaliteitsinstellingen, zodat het gemakkelijk is om in één oogopslag te zien wat je hebt.

NOTE

"Ongebruikte lettertypen verwijderen" verwijdert alleen lettertypen waarnaar geen enkele widget verwijst, dus je ontwerp verandert niet. Je kunt ook zelf een enkel lettertype verwijderen door er met de rechtermuisknop op te klikken in de lijst. Als je per ongeluk iets verwijdert, brengt ongedaan maken het direct terug.

LEES VERDER

Meer om te ontdekken

Pets gebruiken in PicoPixel thumbnail
PICOPIXEL

Pets gebruiken in PicoPixel

Voeg een kant-en-klaar geanimeerd personage toe aan je project. Laat het reageren op knoppen, meetwaarden en andere gebeurtenissen op je apparaat.

pets · sprites · picopixel
PicoPixel-sjablonen, UI-kits en complete apps gebruiken thumbnail
PICOPIXEL

PicoPixel-sjablonen, UI-kits en complete apps gebruiken

Vind een geschikt voorbeeld, open of importeer het in PicoPixel, pas het ontwerp aan en exporteer LVGL C-code voor je apparaat.

templates · ui-kits · full-apps
PicoPixel LVGL MCP Server Setup Guide thumbnail
PICOPIXEL

PicoPixel LVGL MCP Server Setup Guide

Set up the PicoPixel LVGL MCP server for Claude, ChatGPT, Codex, or Cursor. Learn agent settings, reusable components, colors, fonts, and assets.

LVGL MCP · MCP server setup · AI UI design