-
        

Ergebnis 1 bis 9 von 9

Thema: Schriftart in Array umwandlen

  1. #1
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485

    Schriftart in Array umwandlen

    Anzeige

    Hallo
    Um nicht für jede Schriftart eine eigene Pixelmap von Hand erstellen zu müssen, möchte ich mir eine Funktion/Programm bauen, die mir eine ttf/otf Datei in eine Pixelmap wandelt. Bevorzugt würde ich dies am µC (Mega 2560) machen, es kann aber auch am PC sein.

    Geht das überhaupt? Wenn ja, wie macht man so etwas?

    grüße

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    08.07.2008
    Beiträge
    6
    Hi,

    schau mal hier : http://www.werle.com/foto/format2.htm

    Vektorgrafik nach Pixelgrafik (ttf nach BMP) ist nicht trivial. Ich würde das nicht im µC programmieren wollen. In Win7 gibt es im Zubehör/Systemprogramme einen "Editor ür benutzerdefinierte Zeichen", vielleicht hilft das.

    Gruss Hambone

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    01.04.2005
    Beiträge
    84
    Hi,

    dazu möchte man sinnvollerweise eine Hochsprache auf dem PC verwenden. Das Beispiel hier ist mit Python und der Python Imaging Library in 11 Zeilen erledigt: Ein R (Arial, 36 Pixel Zeichenhöhe) in Einzelpixel verzaubert. Ich helfe gerne weiter, wenn du kein Python kannst. Alle Buchstaben in eine Pixelmap zu basteln, wäre sicherlich auch kein echter Aufwand.

    Code:
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
    0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
    0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0
    0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
    0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0
    0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0
    0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
    Angehängte Dateien Angehängte Dateien

  4. #4
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Hallo
    Am PC zu machen ist kein Problem
    Ich möcht halt eine ttf/otf nehmen, die Pixelmaße einstellen und eine fertige Pixelpam rausbekommen :P

    Ja bitte, ich kenn mich leider überhaupt nicht mit Python aus

    grüße

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    01.04.2005
    Beiträge
    84
    Hi,

    hast Du ein Beispiel, wie so eine Pixelmap aussieht? Es wird wohl irgendein C-Header sein? Gibt es da ein Standardformat? Dann sehe ich mal, was sich machen lässt.

    Grüße

  6. #6
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    Nein, hab ich nicht, aber ich hätt an ein 3D Array gedacht, das in der ersten Ebene den Buchstaben auswählt und dann in den anderen 2 die Pixelmap liegt. Somit hätten wir z.B. ein Array mit der Größe von 70 Buchstaben (Groß, Klein und ein paar Sonderzeichen) und dann die z.B. 10x16px Große Map. Dort stehen eigentlich nur bool Werte drinnen (Pixel ein oder aus) und so bau ich mir den Buchstaben.
    Dein Programm ist ja denk ich mal kein schlechter Ansatz, nur versteh ich Python nicht...

    Von dem her würd ich eigentlich gern wissen, wie eine ttf/otf Datei aufgebaut ist, und ich diese dann zerlegen kann und somit Pixel bzw. Positionsinformationen raus bekomme

    grüße

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Das Python-Beispiel schreibt einen Buchstaben in der gewünschten Größe tatsächlich auf ein Bild, das du dann rastern kannst.

    Einfacher wirds kaum. Willst du wirklich aus der otf-Datei selbst rauslesen, wie ein Buchstabe aussieht?

    In C gibts die "gd"-Bibliothek mit der ähnliches möglich sein sollte. Obwohl ich mich im Moment nicht erinnere, ob man da überhaupt Texte schreiben kann.

    edit: ja ja, geht eh alles. Dokumentation ist ein kleines Problem, aber hier sind die wichtigsten Funktionen erklärt (sollte man vielleicht mal sichern bevor das ganz weg ist )
    http://web.archive.org/web/201002080....org/Reference

    In C bist sattelfest?
    Geändert von ichbinsisyphos (11.03.2013 um 19:27 Uhr)

  8. #8
    Erfahrener Benutzer Roboter-Spezialist Avatar von robo_tom_24
    Registriert seit
    04.02.2012
    Ort
    Burgenland, Österreich
    Beiträge
    485
    okee..
    Schon, ja

    Die Lib schaut schon vielversprechend aus, ist halt doch viel Arbeit sich einzulesen, aber ich hab ja Zeit :P

    Sattelfest...schon ja...kommt drauf an wie mans sieht

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Schön ist das übrigens nicht in gd. Das wär wirklich ein perfekter Vorwand, mit Python anzufangen. Ich kann aber nicht abschätzen wie unverständlich das ist, wenn man keine Erfahrungen mit der Sprache hat.

    Das ist das verwendete Python-Modul, davon brauchst Image, ImageDraw und ImageFont:
    http://www.pythonware.com/products/pil/
    Die Dokumentation ist sicher schonmal besser.

Ähnliche Themen

  1. [ERLEDIGT] Neue Schriftart? (dick/dünn)
    Von -schumi- im Forum Anregungen/Kritik/Fragen zum Forum und zum Wiki RN-Wissen
    Antworten: 4
    Letzter Beitrag: 23.10.2011, 12:45
  2. Array
    Von infection im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 26.05.2008, 22:47
  3. Array auf zweidimensionale Array
    Von semicolon im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 25.05.2007, 13:48
  4. Array ---> String
    Von Thinker im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 23.01.2007, 10:06
  5. Nur Nummern in Array / nur Variablentyp byte als Array?
    Von Crashmichl im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 28.04.2006, 00:15

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •