20th
Июл

Как в Delphi сделать принтскрин и пережать в jpeg формат?

Posted by Chas under Пост-обзор

procedure GetRS(RS:TBitmap; Path: string);
var
  c: TCanvas;
   r: TRect;
   jpgImg: TJPEGImage;
begin
   c:=Tc.Create;
   c.Handle:=getWindowDC(GetDesktopWindow);
   try
      r:=Rect(0,0,screen.Width,screen.Height);
      RS.Width:=screen.Width;
      RS.Height:=screen.Height;
      RS.Canvas.CopyRect(r,c,r);
      RS.SaveToFile(Path);
      jpgImg := TJPEGImage.Create;
      jpgImg.Assign(RS);
      jpgImg.SaveToFile(Path)
finally
      ReleaseDC(0,c.Handle);
      c.Free;
      jpgImg.Free;
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
   b: TBitMap;
begin
   b:=TBitMap.Create;
   GetRS(b,ExtractFilePath(Application.ExeName) + IntToStr(i) + ‘.jpg’);
   b.Free;
   Inc(i);
end;

Тема на форуме

Похожие статьи