德尔福 - 截图质量

Mad*_*iha -1 delphi delphi-xe2

我使用此代码制作屏幕截图:

function GetScreenShot: TBitmap;
var
  Desktop: HDC;
begin
  Result  := TBitmap.Create;
  Desktop := GetDC(0);
  try
    try
      Result.PixelFormat := pf32bit;
      Result.Width := Screen.Width;
      Result.Height := Screen.Height;
      BitBlt(Result.Canvas.Handle, 0, 0, Result.Width, Result.Height, 
        Desktop, 0, 0, SRCCOPY);
      Result.Modified := True;
    finally
      ReleaseDC(0, Desktop);
    end;
  except
    Result.Free;
    Result := nil;
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  Image1.Picture.Bitmap := GetScreenShot;
end;
Run Code Online (Sandbox Code Playgroud)

现在我想问一下如何改变质量.例如,我可以选择25%,50%,75%和100%.

我怎么能在我的代码中实现它?

And*_*rey 5

您无法指定所拍摄屏幕截图的大小或质量,但您可以稍后自行更改,例如,请查看以下代码:http://www.tek-tips.com/faqs.cfm?fid = 7481

  • 除了链接示例:使用HALFTONE设置SetStretchBltMode可能很有用 (4认同)