
21.10.2010, 09:48
|
Начинающий
|
|
Регистрация: 05.10.2010
Сообщения: 112
Репутация: 1227
|
|
Цитата:
Сообщение от Asinkrit
Если это работает, то это великолепно, однако есть другая проблема, получить изображение флешки в свернутом окне, вот она точно не решается.
|
Код:
procedure TfrmMain.WebBrowserScreenShot(const wb: TWebBrowser; const fileName: TFileName);
var
viewObject : IViewObject;
r : TRect;
bitmap : TBitmap;
ji: TJPEGImage;
begin
if wb.Document <> nil then
begin
wb.Document.QueryInterface(IViewObject, viewObject) ;
if Assigned(viewObject) then
try
bitmap := TBitmap.Create;
try
r := Rect(0, 0, wb.Width, wb.Height) ; //left, top, right, bottom
bitmap.Height := wb.Height;
bitmap.Width := wb.Width;
viewObject.Draw(DVASPECT_CONTENT, 1, nil, nil, Application.Handle, bitmap.Canvas.Handle, @r, nil, nil, 0) ;
ji := TJPEGImage.Create;
with ji do
try
Assign(bitmap) ;
SaveToFile(fileName) ;
finally
Free;
end;
finally
bitmap.Free;
//ji.Free; // При включённой выкидывает ошибку
end;
finally
viewObject._Release;
end;
end;
end;
Скриншотим содержимое браузера в файл. Потом обрабатываем.
|