Trasformare il contenuto visibile dell'oggetto WebView in una immagine

Da Gambas-it.org - Wikipedia.

Per trasformare il contenuto visibile dell'oggetto WebView in una immagine, bisognerà utilizzare il metodo WebView1.Document.Paint() .


Facciamo un esempio pratico, ponendo su un Form un oggetto WebView ed una PictureBox, nella quale mostreremo il risultato finale.

Private i As Image


Public Sub Form_Open()

 i = New Image(WebView1.W, WebView1.H)

' Si specifica il dispositivo sul quale agirà "Paint",
' poiché poi il metodo ".Document.Paint()" utilizzerà il dispositivo corrente di Paint.
 Paint.Begin(i)
 
' Carica una pagina WEB:
 WebView1.Url = "http://www.gambas-it.org/smf/"

End


Public Sub Button1_Click()

 Dim pc As Picture


  WebView1.Document.Paint()

' Trasformiamo l'oggetto "Image" in una "Picture", al fine di poterla mostrare con la "PictureBox".
' Inoltre, salviamo l'immagine in un file immagine.
  With i
    pc = .Picture
    .Save("/tmp/imm.png", 100)
  End With

' Dimensioniamo la "PictureBox" come la "Image",
 ' e carichiamo la  "Picture" nella "PictureBox":
  With PictureBox1
    .W = i.W
    .H = i.H
    .Picture = pc
  End With
 
End