Hi
Ich hatte mal ein aehnliches Problem, allerdings in C#, ich hab hier das erstellen des Bitmaps an dein Problem angepasst. Eine Uebersetzung sollte nicht die Allergroesste Schwierigkeit sein, da ja eigentlich nur Daten in einen Stream geschrieben werden
Code:
s.Write((ushort)0x4D42);
s.Write((uint)0);
s.Write((uint)0);
s.Write((uint)54);
s.Write((uint)40);
s.Write((uint)width); //Breite
s.Write((uint)height); //Hoehe
s.Write((ushort)1);
s.Write((ushort)24); //24bpp
s.Write((uint)0);
s.Write((uint)0);
s.Write((uint)0xEC4);
s.Write((uint)0xEC4);
s.Write((uint)0);
s.Write((uint)0);
for (int i = 0; i < height; i++)
{
for (int j = 0; j < width; j++)
{
s.Write((byte)0); //B
s.Write((byte)0); //G
s.Write((byte)0); //R
}
for (int j = 0; j < (4 - (i * 3) % 4); j++) //die 3 bedeutet steht fuer die 24bpp in Byte
s.Write((byte)0); //Jede Zeile wird auf eine 4Bit-Breite mit 0en aufgefuellt
}
h.Position = 2;
s.Write((uint)h.Length);
Eine genauere Beschreibung hatte ich auf Wikipedia gefunden:
*klick*
greetz
Mike