jak zrobić zrzut z ekranu do pliku aby ten plik nie zajmował więcej niż ok 200 kb
0
0
Do uses:
uses Jpeg;
aha jeszcze jedno procedura zapisuje rysunek jako jpg :)
wystarczy wywołać procedurę z nazwą pliku np .
ScreenShoot('C:\Screen.jpg');
oto Kod:
procedure ScreenShoot(FileName:String);
var
DesktopCanvas:TCanvas;
Bitmap:TBitmap;
JPG:TJpegImage;
begin
DesktopCanvas:=TCanvas.Create;
DesktopCanvas.Handle:=GetWindowDC(GetDesktopWindow);
Bitmap:=TBitmap.Create;
Bitmap.Width :=Screen.Width ;
Bitmap.Height :=Screen.Height;
Bitmap.Canvas.CopyRect(Rect(0,0,Bitmap.Width,Bitmap.Height),
DesktopCanvas,Rect(0,0,Screen.Width,Screen.Height ));
DesktopCanvas.Free;
Jpg:=TJpegImage.Create;
Jpg.Assign(Bitmap);
Bitmap.Free;
try
Jpg.SaveToFile(FileName);
Jpg.Free;
except Exception.Create('Bład w zapisie na dysk');
end;
end;
0
Dzięki, procedura działa jak należy.
0
mi ta procedura NIE DZIAŁA. Pisze: [Error] Unit1.pas(23): Identyfikator jest oczekiwany, a został znaleziony stały łańcuch (string)