Olen tehnyt oman pienen nettiselaimen web browser controllin avulla. Onko mitenkään mahdollista tallentaa selaimenin näyttämämä sivu kuvana? Haluan ottaa sivusta screenshotin...
Jos oikein ymmärsin mitä meinasit niin eikai se ole ku ottaa screensshotti. "alt + Print Scrn" niin saat vain siitä päällä olevasta ikkunasta otettuu kuvan!
Ei mitään alttia tarvitse senkun painaa vain Print Scrn. Mutta ei Tehy varmaan ihan tuota tarkoittanut.
Lisää formille selainkontrollin kanssa samankokoinen PictureBox. Kirjoita sitten BitBlt-funktion määrittely ja siihen liittyvä vakio:
Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long Private Const SRCCOPY = &HCC0020
Tämän jälkeen selaimessa näkyvän kuvan tallennus tiedostoon menee suurinpiirtein näin:
BitBlt Picture1.hDC, 0, 0, WebBrowser1.Width, WebBrowser1.Height, Me.hDC, WebBrowser1.Left, WebBrowser1.Top, SRCCOPY SavePicture Picture1.Image, "sivu.bmp"
Tässä formin ScaleModen pitää olla 3 (pikseli) ja Picture1:n AutoRedrawin pitää olla True.
Muuten näyttää toimivan, mutta tuo tallentaa vain käynnistä palkin tasalla olevat jutut, mutta ei siitä yhtään ylöspäin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.