views:

71

answers:

2

Are there any ASP.NET APIs for generating a GIF/JPG/PNG preview of an HTML page?

A: 

Here is a .NET library, but its not free.

Websites Screenshot

rick schott
+2  A: 

You can use System.Windows.Forms.WebBrowser:

public void CaptureWebBitmap()
{
    WebBrowser browser = new WebBrowser();
    browser.Size = new Size(200, 150);
    browser.ScrollBarsEnabled = false;

    browser.Navigate("http://www.stackoverflow.com");

    while (browser.ReadyState != WebBrowserReadyState.Complete)
    {
       // release temporary e.g. some threading resources ...
    }

    Bitmap bitmap = new Bitmap(200, 150);
    browser.DrawToBitmap(bitmap, new Rectangle(browser.Location.X, browser.Location.Y, browser.Width, browser.Height));
}

but you must run this function in new STA thread

Thread threas = new Thread(new ThreadStart(CaptureWebBitmap));
threas.SetApartmentState(ApartmentState.STA);
threas.Start();
Jan Remunda