Screen z TWebBrowser

0

Jak do TVitmap zapisać całą zawartość TWebBrowsera?

0

Robisz screena całego ekranu, potem odczytujesz położenie webbrowsera (ClientToScreen, zdaje się), potem wycinasz z tej bitmapy samego webbrowsera i zapisujesz, potem przesuwasz webbrowsera na dół o tyle, ile trzeba, i powtarzasz operację, a potem łączysz bitmapy. Podpowiedzi i kody do wszystkich tych operacji znajdziesz na forum i w FAQ.

0

EEEE tam :-/ Tak to nie żadna robota :( Zawartość MSHTML można screenować w całości za jednym razem. Jak to zrobić w TWebBrowser [???] [sciana]

0

Teraz nie moge przypomniec,ale gdzies tu,lub na torry.net widzialem procedure na zrut do schowka aktywnego okna

0
lofix napisał(a)

aktywnego okna

ale wiesz, chodzi o m$ie w moim programie, a nie m$ie by mikrozoff :)

a skad wziazc mshtml [???] moze to jest lepsze od twebbrowsera [sciana]

0

Popieram pomysł berl'a z tym, że nie trzeba screena całego ekranu, a wystarczy samo aktywne okno. Miałem trochę czasu, więc napisałem Ci kodzik. Mam nadzieje, że pomoże. W razie czego - pytaj.

Na formę wrzuć Image, Button [GetWebBrowserScreen] i oczywiście WebBrowser.

procedure TForm1.GetWebBrowserScreenClick(Sender: TObject);
begin
  keybd_event(VK_MENU, 0, 0, 0);
  keybd_event(VK_SNAPSHOT, 0, 0, 0);
  keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0);

  Application.ProcessMessages;
  Sleep(100);

  Image.Picture.LoadFromClipboardFormat(CF_BITMAP, ClipBoard.GetAsHandle(CF_BITMAP), 0);
  Clipboard.Clear;

  with WebBrowser do
    begin
      Image.Picture.Bitmap.Canvas.CopyRect(Rect(0, 0, Width , Height), Image.Picture.Bitmap.Canvas, Rect(Left + GetSystemMetrics(SM_CYFIXEDFRAME) +1, Top + GetSystemMetrics(SM_CYCAPTION) + GetSystemMetrics(SM_CXFIXEDFRAME) +1, Width + Left + GetSystemMetrics(SM_CYFIXEDFRAME) +1, Height + Top + GetSystemMetrics(SM_CYCAPTION) + GetSystemMetrics(SM_CXFIXEDFRAME) +1));
      Image.Picture.Bitmap.Height := Height;
      Image.Picture.Bitmap.Width := Width;
    end;
end;

Jak będzie dobre może wrzucę do FAQ'u.

1 użytkowników online, w tym zalogowanych: 0, gości: 1