2012-01-13 76 views
1

我发现这里有100个帖子和谷歌讨论这种类型...从HTML创建图像,但没有找到任何解决方案,我的问题。从HTML模板创建图像ASP.NET

我正在使用特定模板在运行时创建HTML广告的应用程序。我需要保存每个广告的图片。 HTML广告(显示为HTML页面)非常棒...我如何将这个添加到图片中?我正在开发ASP.NET

我的研究指出我使用WebRequest方法来获取页面,然后从中获取字节[]以将其保存为图像......这是因为...导致HTML以文本形式出现并且尚未格式化(直到在浏览器中显示)....其次我得到了使用HTML5 Canvas元素的有趣结果...可悲的是我的应用程序不在HTML5中...谢谢

回答

0

您可以使用WebBrowser控件我猜):

using System.Windows.Forms; 
using System.Drawing; 

... 

using(var browser = new WebBrowser()) 
{ 
    browser.ScrollBarsEnabled = false; 
    browser.ScriptErrorsSuppressed = true; 
    browser.Navigate("www.example.com"); 
    while(browser.ReadyState != WebBrowserReadyState.Complete) 
    { 
     Application.DoEvents(); 
    } 
    browser.Width = browser.Document.Body.ScrollRectangle.Width; 
    browser.Height = browser.Document.Body.ScrollRectangle.Height; 

    var bitmap = new Bitmap(browser.Width, browser.Height); 
    browser.DrawToBitmap(bitmap, new Rectangle(0, 0, browser.Width, browser.Height)); 
    bitmap.Save("filename"); 
}