Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
Delphi 6 Personal
|
AW: BitMap zeichnen per API
28. Nov 2012, 10:35
Eine Möglichkeit könnte ich mir so vorstellen:
Delphi-Quellcode:
var
theBitmapBitArray: array of dword; // das array vom OleVariant
procedure TForm ...;
var
theBitmap: HBITMAP;
pBmpBits: Pointer;
bi: BITMAPINFO;
bmpWidth: integer;
bmpHeight: integer;
begin
bmpWidth := 320;
bmpHeight := 240;
setlength(theBitmapBitArray, bmpWidth * bmpHeight);
// ----------------------------------------------------------- //
ZeroMemory(@bi, sizeof(BITMAPINFO));
with bi.bmiHeader do
begin
biSize := sizeof(BITMAPINFOHEADER);
biWidth := bmpWidth;
biHeight := -bmpHeight;
biCompression := BI_RGB;
biBitCount := 32;
biPlanes := 1;
biXPelsPerMeter := 0;
biYPelsPerMeter := 0;
biClrUsed := 0;
biClrImportant := 0;
end;
theBitmap := CreateDIBSection(0, bi, DIB_RGB_COLORS, pBmpBits, 0, 0);
pBmpBits := @theBitmapBitArray[0];
SetDIBits(0, theBitmap, 0, bi.bmiHeader.biHeight * -1, pBmpBits, bi, DIB_RGB_COLORS);
image1.Picture.Bitmap.Handle := theBitmap;
image1.Refresh;
end;
Geändert von turboPASCAL (28. Nov 2012 um 10:52 Uhr)
|
|
Zitat
|