Bitmap to Header



  • Hm, ich würds trotzdem als resource definieren.
    Weil Global Variablen ja mit dem Code in den RAM geladen werden resourcen kann man laden wann man möchte.



  • Hi,

    ich programmiere was für einen Scanner.
    Den Batteriestatus (voll, leer, ...) möchte ich als Bild darstellen,
    sozusagen auf dem LCD eine leere Batterie (usw.) darstellen.
    Um nicht selber eine "charmap" anferigen zu müssen wie:

    const char charmap[2+7*6] = {
    0x06, 0x06,
    0x00, 0x38, 0x44, 0x44, 0x38, 0x00, //0
    0x00, 0x7C, 0x14, 0x14, 0x08, 0x00, //1
    0x04, 0x04, 0x7C, 0x04, 0x04, 0x00, //2
    0x00, 0x44, 0x7C, 0x44, 0x00, 0x00, //3
    0x00, 0x38, 0x44, 0x44, 0x44, 0x00, //4
    0x00, 0x38, 0x44, 0x44, 0x38, 0x00, //5
    0x00, 0x7C, 0x08, 0x10, 0x7C, 0x00  //6
    };
    

    habe ich gedacht, dass macht evtl. ein Tool oder ähnliches.
    Pech gehabt, rotzdem Danke.
    😞



  • Was du suchst, nennt sich IMHO 'Ascii Art'.

    Hatte da mal ein Programm, mit dem man aus Bildern Ascii-Text generieren kann (diese Tools gibts haufenweise, auch als Applet und so).

    Damit kannst du es versuchen. Musst dann nurnoch zwischen die einzelnen Zeichen ',' schreiben (vielleicht wieder mit nem Programm). Dann kannste das in deine Header-Datei einbauen.



  • Was du suchst, nennt sich IMHO 'Ascii Art'

    unsinn.
    ascii-art ist das.
    gesucht wird sowas.
    laesst sich aber auch schnell selber schreiben:
    bitmap laden, die farbwerte von jeweils 8 pixel auf 0/1 quantisieren und zusammen als ein byte in eine text-datei schreiben.



  • GENAU das wird gesucht!
    Aber wo bekomme ich das kostenlos her? 😡



  • LordJaxom schrieb:

    Du, so abwegig ist der Gedanke nichtmal - kennst Du das XPM-Format? Erinnert ein bisschen an ASCII-Grafik in C

    Was sich hier an Aufschneidern und Leuten mit Halbwissen rumtreibt ist ja haarsträubend. XPM hat NICHTS mit ASCII-Art zu tun, das ist ein Pixel-Grafikformat wie andere auch (deswegen auch das "X" im Namen weil es eben für Grafiken in einer X-Umgebung gedacht ist und nicht für die Konsole).



  • geht z.b damit: http://www.x-ways.net/winhex/index-d.html (testversion)
    datei laden, dann 'copy to clipboard as c-array'
    wenn du den clipboard-inhalt in deinen source-code kopierst erhälste ein
    unsigned char array[] = {0x..., .....};



  • habe ich gedacht, dass macht evtl. ein Tool oder ähnliches.

    *.xpm Dateien können ganz normal in GIMP erstellt werden, wie alle Bilder. Dann speichern als xpm, und schon hat man die Headerdatei, die man jetzt includieren kann.

    In einigen Fällen mache ich das ganz gerne. Ein statisches Binary ist so unter Linux nicht auf eine weitere Ressource angewiesen, wenn es ein Icon mitbringen will. So was ist doch und Windows für *.exe Dateien auch ganz normal, oder?



  • Das kann man selbst programmieren.
    Du liest die Bilddateiinformationen ein. ( BITMAPFILEHEADER, BITMAPINFOHEADER )
    Holst dir die Bildgröße, bzw. berechnest sie und holst dir den Zeiger auf den Anfang der Pixeldaten und schreibst die Pixelwerte in deine Headerdatei:

    char bitmap[groesse_der_pixeldaten_in_byte] =
    {
    0xFF, ...
    }

    Hast du das erst einmal fertig, kannst du aus jeder bmp-Datei deine eigene "charmap" erzeugen.

    Es gibt auch das Tool reswrep.



  • Vertippt, soll heissen: reswrap


Anmelden zum Antworten