AdafruitGFXFontTool
Ein benutzerdefinierter Schriftartenersteller für Mikrocontroller, der das Adafruit GFX-Schriftartformat verwendet
So installieren oder erstellen Sie das Projekt und führen es aus
Laufzeitanforderungen:
- Jeder Windows-Computer (Desktop/Laptop)
- .NET Framework 4.8
Build-Anforderungen:
- Jeder Windows-Computer (Desktop/Laptop)
- Visual Studio 2022
- .NET Framework 4.8
Herunterladen und Ausführen des Projekts
- Laden Sie das vorgefertigte und betriebsbereite Projekt unter AdafruitGFXFontTool -Releases herunter
- Entpacken Sie Release.zip
- Öffnen Sie den Release-Ordner und führen Sie AdafruitGFXFont.exe aus
Erstellen und Ausführen des Projekts
- Laden Sie den Quellcodeordner herunter und extrahieren Sie ihn
- Öffnen Sie AdafruitGFXFont/AdafruitGFXFont.csproj in Visual Studio 2022
- Wählen Sie in Visual Studio Build->Build Solution aus
- Das Projekt wird unter AdafruitGFXFontbinDebug oder AdafruitGFXFontbinRelease erstellt (Debug per Standard).
- Die generierte ausführbare Datei heißt AdafruitGFXFont.exe
Nutzung des Projekts
Sie haben zwei Möglichkeiten, mit dem Projekt zu beginnen. Erstellen Sie entweder Ihre eigene benutzerdefinierte Schriftart mit „Schrifteinstellungen festlegen“ oder importieren Sie eine Schriftart mit „Schriftart importieren“.
Beim Importieren einer benutzerdefinierten Schriftart werden automatisch auch alle Eigenschaften der Schriftart importiert: Zeichenbereich, Name und Höhe
Wenn Sie eine neue Schriftart erstellen, müssen Sie diese Variablen selbst auswählen
- Der Schriftartname kann ein beliebiger gültiger Variablenname in den C/C++-Regeln für die Benennung von Variablen sein
- Die Schrifthöhe muss als uint8_t eine Zahl (0-255) sein. Hinweis: Die Schrifthöhe wird nur zur Bestimmung des neuen Zeilenabstands (auch bekannt als yAdvance) verwendet.
- Bereichsminimum und -maximum legen den Bereich der UTF-8-Zeichen fest, die in die Schriftart einbezogen werden sollen. Der Bereich kann entweder als Zahl (0-65535) oder als Hexadezimalzahl (0x00-0xfFF) als uint16_t eingegeben werden.
- Wenn alle Variablen wie gewünscht eingegeben wurden, klicken Sie auf „Senden“.
Unter der Bezeichnung „Zeichen auswählen“ befindet sich ein Dropdown-Menü mit allen verfügbaren Zeichen im Schriftartbereich, aufgelistet im Format (int / hex = char). Wählen Sie eine aus, um loszulegen.
Nachdem Sie ein Zeichen ausgewählt haben, können Sie die Eigenschaften des Zeichens ändern:
- Breite: Die Breite (x-Koordinatengröße) Ihres Zeichens – eine Zahl (0-255) als uint8_t
- Höhe: Die Höhe (y-Koordinatengröße) Ihres Charakters – eine Zahl (0-255) als uint8_t
- xAdvance: Die Anzahl der Pixel, um die der Cursor (x-Koordinate) nach dem Zeichnen des Zeichens bewegt wird – eine Zahl (0-255) als uint8_t
- xOffset: Der Bewegungsumfang des Cursors (x-Koordinate) vor dem Zeichnen des Zeichens (hat keinen Einfluss auf den Cursor nach dem Zeichnen) – eine Zahl (-128-127) als int8_t
- yOffset: Der Bewegungsumfang, der auf den Cursor (u-Koordinate) vor dem Zeichnen des Zeichens angewendet wird (beeinflusst den Cursor nach dem Zeichnen nicht) – eine Zahl (-128-127) als int8_t Nachdem Sie die gewünschten Variablen ausgewählt haben, klicken Sie auf „Neue Zeichenoptionen anwenden“.
Beim Anwenden neuer Zeicheneigenschaften wird das zuvor gezeichnete Zeichen gelöscht, wodurch am äußersten rechten Punkt des Bildschirms eine Reihe weißer Quadrate zurückbleibt.
Klicken Sie auf die Quadrate, um mit dem Malen zu beginnen! Wenn Sie darauf klicken, wechseln die Quadrate von Weiß zu Schwarz, wobei Schwarz die Pixel sind, die gezeichnet werden
Hinweis: Die Quadrate werden aus einem Array von C#-PictureBox-Elementen erstellt, die für diese Aufgabe höchst ineffizient, aber einfach zu debuggen und zu entwickeln sind. Dies bedeutet, dass es eine Verzögerung gibt, wie schnell Sie mehrmals auf dasselbe Quadrat klicken können
Wenn Sie mit dem Malen der gewünschten Zeichen fertig sind, klicken Sie auf „Schriftart erstellen“ und wählen Sie einen Ordner aus
Dadurch wird eine einzelne Datei im Ordner „{fontname}GFXFONT.h“ ausgegeben.
Wenn diese Header-Datei in ein Projekt importiert wird, kann das GFXfont-Element als der zu Beginn festgelegte Schriftartname bezeichnet werden
Ressourcen
- Adafruit GFX-Grafikbibliothek
- LED-Matrix-Bibliothek, die ich für diese Schriftart verwendet habe: ESP32-HUB75-MatrixPanel