Feedback

C# - Screenshot einer Webseite erstellen

Veröffentlicht von am 11.09.2008
(2 Bewertungen)
Erzeugt einen Screenshot von einer beliebigen Webseite.
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

namespace ScreenshotMaker
{
	public static class ScreenshotMaker
	{
		public static void MakeScreenshotFromUrl(string url)
		{
			WebBrowser wb = new WebBrowser();
			wb.ScrollBarsEnabled = false;
			wb.ScriptErrorsSuppressed = true;
			wb.Navigate(url);
			while (wb.ReadyState != WebBrowserReadyState.Complete) { Application.DoEvents(); }

			wb.Width = wb.Document.Body.ScrollRectangle.Width;
			wb.Height = wb.Document.Body.ScrollRectangle.Height;

			Bitmap bitmap = new Bitmap(wb.Width, wb.Height);
			wb.DrawToBitmap(bitmap, new Rectangle(0, 0, wb.Width, wb.Height));
			wb.Dispose();

			bitmap.Save(@"C:\screenshot.jpg", ImageFormat.Jpeg);
		}
	}
}
Abgelegt unter webseite, website, screenshot, WebBrowser.

2 Kommentare zum Snippet

Jan Welker schrieb am 11.09.2008:
Danke an Robert Mühsig für die Genehmigung den Snippet hier zu veröffentlichen!
NicoMcF schrieb am 27.04.2011:
Tolles Snippet. Ich persönlich würde als Bildformat bevorzugt das platzsparende und verlustfreiere PNG-Format wählen.
 

Logge dich ein, um hier zu kommentieren!