Taking screenshot of a webpage programmatically

.net, c#, screenshot, webpage-screenshot

Solution

I searched and searched and searched and found it Webpage thumbnailer (a The Code Project article).

Problem

How do take a sceenshot of a webpage programmatically given the URL as input? And here is what I have till now: ``` // The size of the browser window when we want to take the screenshot (and the size of the resulting bitmap) Bitmap bitmap = new Bitmap(1024, 768); Rectangle bitmapRect = new Rectangle(0, 0, 1024, 768); // This is a method of the WebBrowser control, and the most important part webBrowser1.DrawToBitmap(bitmap, bitmapRect); // Generate a thumbnail of the screenshot (optional) System.Drawing.Image origImage = bitmap; System.Drawing.Image origThumbnail = new Bitmap(120, 90, origImage.PixelFormat); Graphics oGraphic = Graphics.FromImage(origThumbnail); oGraphic.CompositingQuality = CompositingQuality.HighQuality; oGraphic.SmoothingMode = SmoothingMode.HighQuality; oGraphic.InterpolationMode = InterpolationMode.HighQualityBicubic; Rectangle oRectangle = new Rectangle(0, 0, 120, 90); oGraphic.DrawImage(origImage, oRectangle); // Save the file in PNG format origThumbnail.Save(@"d:\Screenshot.png", ImageFormat.Png); origImage.Dispose(); ``` But this is not working. It is only giving me a white blank picture. What am I missing here? Is there any other way I could get the screenshot of a web page programmatically?

Original source

Related problems