Entwickler-Ecke

Sonstiges (Delphi) - Buchstabe in Bit-Matrix zerlegen


Noob23 - Di 07.04.09 09:25
Titel: Buchstabe in Bit-Matrix zerlegen
Hallo beisammen,

gestern habe ich zu dem Thema bereits in der Shoutbox gefragt aber aus zeitlichen gründen kein neues Thema eröffnet...

Ich habe vor einen Buchstaben bzw. Text in seine Pixelbestandteile zu zerlegen, da ich nicht weis nach was man da am besten googeln/Forensuche soll habe ich einen neuen Thread eröffnet.

Hier ein Beispiel des Vorhabens (Buchstabe "N" zerlegt in bitarray):

**...*
*.*..*
*..*.*
*...**

Zur Verfügung steht eine Anzeigematrix von max. 8x8.

Ich habe bereits versucht mittels canvas und textout zu spielen ... aber das wahre ist es nicht.

Wer hat eine Idee wie man die Pixel der Buchstaben am einfachsten abfragen kann?

Gruß
Noob23


martin300 - Di 07.04.09 10:04

Hallo,
hier sind ein paar Ideen wie die Schrift gestaltet werden könnte:

http://www.ihr-freelancer.de/asciiart

Sonst gibt es auch die Möglichkeit es selbst zu definieren, wie jeder Buchstabe aussehen soll.


Sinspin - Di 07.04.09 10:38

user profile iconmartin300 hat folgendes geschrieben Zum zitierten Posting springen:
Hallo,
hier sind ein paar Ideen wie die Schrift gestaltet werden könnte:

http://www.ihr-freelancer.de/asciiart

Sonst gibt es auch die Möglichkeit es selbst zu definieren, wie jeder Buchstabe aussehen soll.

Ich denke das es hier nicht ums zerlegen von Schriften geht die schon jemand für dieses Programm erstellt hat. Sondern sicher um alle Schriften die es gibt und die zum Beispiel in Windows verfügbar sind.
In guten alten DOS zeiten war das ganze sehr einfach. Die Bit-Maps der Schriften lagen im Speicher und man konnte einfach an sie rankommen um sie für seine Zwecke weiter verarbeiten.
Unter Windows schaut das mit den Schriften etwas anders aus. Die wenigsten sind noch echte Bit-Maps, sondern werden, wenn ich das richtig kappiert habe, als Vektorgrafik gespeichert. Das macht diese Schriften natürlich leichter skalierbar. Aber man hat dann eben kein Bit-Map mehr zu Verfügung.
Ich habe mir dafür mal ein Programm geschrieben bei dem man die Schrifteigeschaften eingibt und dann den gesammten Zeichensatz als XML Datei speichern kann.

Einen Zeichensatz selber erstellen ist zwar sicher eine schöne Sache, aber das halte ich für Zeitverschwendung wenn einem eigentlich dir vorhandenen Schriften ausreichen.


Nersgatt - Di 07.04.09 11:07

user profile iconNoob23 hat folgendes geschrieben Zum zitierten Posting springen:

Ich habe bereits versucht mittels canvas und textout zu spielen ... aber das wahre ist es nicht.

Zeig doch da mal die Ansätze. Ich habe im ersten Moment an die selbe Vorgehensweise gedacht.
Text ausgeben, und dann mit Canvas.Pixels[x,y] abtasten.


Kha - Di 07.04.09 11:41

user profile iconNoob23 hat folgendes geschrieben Zum zitierten Posting springen:
Zur Verfügung steht eine Anzeigematrix von max. 8x8.
Bei der Größe kannst du die Windows-Vektorfonts vergessen, ich würde es eher hier probieren: Suche bei Google 8X8 FONT


Noob23 - Di 07.04.09 15:33

Erst mal danke für alle Antworten!

user profile iconNersgatt hat folgendes geschrieben Zum zitierten Posting springen:

Zeig doch da mal die Ansätze. Ich habe im ersten Moment an die selbe Vorgehensweise gedacht.
Text ausgeben, und dann mit Canvas.Pixels[x,y] abtasten.

Naja es war nur ein Ansatz/Versuch es über Canvas zu lösen, daher habe den Quelltext nicht gespeichert -.-

Es wird wohl die beste Lösung sein, für die jeweiligen Zeichen einen Verweis auf eine Datenarray zu machen - somit wäre es dann auch gleich portierbar für einen µC ;)

Gruß
Noob23