Guten Morgen! Nach einer kleinen Korrektur funktioniert es... fast. Vielen Dank!
Delphi-Quellcode:
var
bmp: TBitmap;
pBuffer: Pointer;
const
ueye_ImgWidth = 1024;
ueye_ImgHeight = 768;
ueye_BufferSize = ueye_ImgWidth * ueye_ImgHeight * 1;
procedure TF_Cam.Timer1Timer(Sender: TObject);
begin
GetMem(pBuffer, ueye_BufferSize);
try
uEyeCam1.CopyImage(Cardinal(pBuffer), ueye_BufferSize);
bmp := TBitmap.Create;
try
bmp.Width := ueye_ImgWidth;
bmp.Height := ueye_ImgHeight;
bmp.PixelFormat := pf8Bit;
Move(pBuffer^, bmp.Scanline[bmp.Height-1]^, ueye_BufferSize);
BitBlt(F_Cam.Canvas.Handle, 0, 0, ueye_ImgWidth, ueye_ImgHeight, bmp.Canvas.Handle, 0, 0, SRCCOPY);
finally
bmp.Free;
end;
finally
FreeMem(pBuffer);
end;
end;
Nur leider stimmt die Palette nicht. Aus dem Grayscale wird ein lustige Ansammlung von Farben. ^^