BASE64 Bitmap

SCIPIO-AEMILIANUS

aka Dubdidadu
Ich hab ein kleines Problem mit der Umsetzung von Hex-Werten zu einem base64-String für den Firefox.
Mein Code:
Code:
function create() {

    var b = "424D4E000000000000003600000028000000030000000200000001001800000000001800000000000000000000000000000000000000FF0000FF0000FF00000000000000FF0000FF0000FF000000";
    var i = 0;
    var out = "";
    while (i < b.length) {
        out = out + String.fromCharCode(parseInt(b.substr(i,2),16)).toUpperCase();
        i=i+2;
    }
    document.getElementById("b64img").src = "data:image/bmp;base64," + Base64.encode(out);
}

Die Funktion Base64.encode() entnahm ich vorerst hier: URL

var b entspricht den HEX-Werten dieses Bildes:
Anhang anzeigen h.bmp(erste Zeile rot, zweite blau)

aber als Ergebnis des Codes kommt folgendes raus:
Anhang anzeigen 23.bmp(alle der 6 pixel unterschiedliche Farben)

EDIT: Die Bilder sind recht klein und vor den Klammern :-P


Wo ist der Fehler zu finden?
 
Das stimmt mit dem toUpperCase, aber so oder so, das Problem bleibt bestehen.

Ich hab jetzt nochmal die einzelnen HEX-Abschnitte kopiert. Irgendwo wird da was verschoben:
Original:424D4E000000000000003600000028000000030000000200000001001800000000001800000000000000000000000000000000000000FF0000FF0000FF00000000000000FF0000FF0000FF000000
Base64:424D4E000000000000003600000028000000030000000200000001001800000000001800000000000000000000000000000000000000C3BF0000C3BF0000C3BF00000000000000C3BF0000C3BF0000C3BF000000
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück