Qualcuno potrebbe condividere il codice per acquisire schermate del controllo del browser Web e salvarlo in un percorso prestabilito.Acquisire schermate del controllo WebBrowser
Sto lavorando con VS 2008 .Net 3.5.
Qualcuno potrebbe condividere il codice per acquisire schermate del controllo del browser Web e salvarlo in un percorso prestabilito.Acquisire schermate del controllo WebBrowser
Sto lavorando con VS 2008 .Net 3.5.
È possibile utilizzare Control.DrawToBitmap(), anche se è nascosto da Intellisense in VisualStudio. Il WebBrowser eredita ancora dal controllo della classe base, quindi questo metodo esiste. Ma quello che ho fatto è stato creare un MenuStrip con un MenuItem che ho usato per testarlo (questo è fondamentalmente solo un click-evento standard), e invece ho creato un oggetto grafico, e ho copiato una porzione dello schermo usando le coordinate corrette. Le uniche cose che devi veramente modificare sono il nome del controllo WebBrowser e la linea che salva effettivamente l'immagine.
private void copyToolStripMenuItem_Click(object sender, EventArgs e) {
int width, height;
width = webBrowser1.ClientRectangle.Width;
height = webBrowser1.ClientRectangle.Height;
using (Bitmap image = new Bitmap(width, height)) {
using (Graphics graphics = Graphics.FromImage(image)) {
Point p, upperLeftSource, upperLeftDestination;
p = new Point(0, 0);
upperLeftSource = webBrowser1.PointToScreen(p);
upperLeftDestination = new Point(0, 0);
Size blockRegionSize = webBrowser1.ClientRectangle.Size;
graphics.CopyFromScreen(upperLeftSource, upperLeftDestination, blockRegionSize);
}
image.Save("C:\\Test.bmp");
}
}
Questo è esattamente ciò di cui ho bisogno ... grazie – Muse
Lavoro come un fascino. Grazie! – molbalga