Habe wieder mal ein kleines Problem.
Vorher habe ich die Größe auf dieser weise übergeben.
Width * Height * 3
Dann habe ich aber Fehler im Bitmap.
Habe jetzt eine Lösung im Net gefunden welche die korrekt Größe liefern sollte.
Tut sie aber nicht Bild ist immer noch Fehlerhaft.
Wie ist denn nun die korrekte Formel um biSizeImage auf die korrekte Größe zu setzen.?
Das war die Lösung aus dem Net.
Delphi-Quellcode:
function ByteAlignOnWord(BitDepth: Byte; Width: Integer): DWord;
begin
Result := (((Width * BitDepth) + $1F) And Not $1F) div $8;
end;
Delphi-Quellcode:
bi.bmiHeader.biSizeImage := DWord(Abs(bi.bmiHeader.biHeight)) *
ByteAlignOnWord(Byte(bi.bmiHeader.biBitCount), bi.bmiHeader.biWidth);
EDIT:
Den schrägen strich habe ich behoben , es fehlte bei Width das - 1
Für das anderen Problem habe ich noch einen Shot hochgeladen.
gruss