Forum: Mikrocontroller und Digitale Elektronik Schrift / Font auf Grafikdisplay (GLCD, Antialiasing, Skalierung)


von Q9 a.k.a. Gast (Gast)


Lesenswert?

Mit dem Display aus Beitrag "Mini-Farbdisplay (+mehr) für 1 Euro" lässt 
sich durch Block/zeichenweises Schreiben Text aus Font-Pixeldaten 
darstellen.

Für bessere Textdarstellung möchte ich ein paar ungenutzte Bits aus dem 
5x7 Zeichensatz für Kerning benutzen (angepasster Buchstabenabstand), 
das scheint nicht schwer in die Tat umzusetzen.

Aber wie ist es mit Skalierung und Antialiasing (und Subpixelrendering)?

Die doppelte Größe sollte einfach zu machen sein, in dem jedes Pixel auf 
4 aufgeblasen wird.

Dann wird der Text aber entsprechend pixelig zu lesen sein.

Man bräuchte da eine Methode, die Kanten zu glätten, vielleicht indem 
man in bestimmte Ecken zusätzliche Pixel einbaut. Aber das darf dann 
wiederum nicht in allen Ecken passieren.

Kennt dazu jemand eine Informationsquelle?

von Benedikt K. (benedikt)


Lesenswert?

Das ist nicht ganz einfach, denn dazu muss die Software erkennen wo eine 
echte Ecke und wo eine Kante sein soll und das ist bei nur 5x7 Pixel 
unmöglich zu erkennen.
Bei einem 'A' würde sonst z.B. auch das Loch im oberen Dreieck verrundet 
werden.
Daher würde ich einen größeren Zeichensatz verwenden und den bei Bedarf 
runter rechnen. Dann ergeben sich automatisch Farbwerte bei denen der 
Pixel nur zu z.B. 1/4, 1/2 oder 3/4 an ist.

von Q9 a.k.a. Gast (Gast)


Lesenswert?

Leuchtet ein! Dafür reichen meine 2 K Flash dann leider nicht mehr aus.

Hier ist ein ganz interessanter 'Artikel' zum Thema Subpixelrendering:
http://today.java.net/pub/a/today/2005/07/26/lcdtext.html

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.