Stream := TMemoryStream.Create;
ImageEnView1.IO.CaptureFromScreen(iecsScreen, crNone);
ImageEnView1.IO.IEBitmap.PixelFormat := ie8g;
ImageEnView1.IO.Params.BitsPerSample := 8;
ImageEnView1.IO.Params.SamplesPerPixel := 1;
ImageEnView1.IO.SaveToStreamBmp(Stream);
Stream.Position:= 0;
image1.Picture.LoadFromStream(Stream);
Stream.Free;
在9.1.2版本之后,转换可以用: IEGlobalSettings().AutoSetBitDepth := True;
// 截图保存到文件 'screen.png'
ImageEnView1.IO.CaptureFromScreen(iecsScreen, -1);
ImageEnView1.IO.SaveToFile('D:\screen.png');
// 截图指定窗体, "Untitled - Notepad"
NotepadHandle := FindWindow(nil, 'Untitled - Notepad');
if NotepadHandle <> 0 then
ImageEnView1.IO.CaptureFromScreen( iecsSpecifiedWindow, crDefault, NotepadHandle );
// 截图多显示器
for i := 0 to Screen.MonitorCount - 1 do
begin
ImageEnView1.IO.CaptureFromScreen( iecsSpecifiedMonitor, -1, i );
ImageEnView1.IO.SaveToFile( format( 'D:\Screen_%d.jpeg', [ i ]));
end;
// 截图主显示器
var
bmp: TIEBitmap;
IO: TImageEnIO;
begin
bmp := TIEBitmap.Create;
IO := TImageEnIO.CreateFromBitmap( bmp );
try
IO.CaptureFromScreen( iecsPrimary );
... do something with bmp ...
finally
IO.Free;
bmp.Free;
end;
end;