Registriert seit: 12. Dez 2004
Ort: Wien, Österriech
893 Beiträge
Delphi 6 Enterprise
|
Re: Alpha-Blending auf beliebigem Hintergrund
17. Okt 2005, 17:20
Delphi-Quellcode:
procedure GetImage(x, y, width, height:Integer;var MyImage:TBitmap);
var DeskDC:THandle;
begin
if not Assigned(MyImage) then
begin
MyImage := TBitmap.Create();
end;
MyImage.Width := width;
MyImage.Height := height;
MyImage.PixelFormat := pf32bit;
DeskDC := GetDC( GetDesktopWindow() );
BitBlt( MyImage.Canvas.Handle, 0,0, width, height, DeskDC, x, y, SRCCOPY);
ReleaseDC( GetDesktopWindow(), DeskDC );
end;
procedure TForm1.Button1Click(Sender: TObject);
var temp:TBitmap;
begin
temp := nil;
GetImage(10,10,200,100,temp);
Canvas.Draw(50,50,temp);
FreeAndNil(temp);
end;
Katura Haris Es (ein gutes Wort) ist wie ein guter Baum, dessen Wurzel fest ist und dessen Zweige in den Himmel reichen.
|
|
Zitat
|