您的位置:首页 > 编程语言 > C#

C#使用WebBrowser对指定网页截图

2017-03-16 16:37 405 查看
使用webbrowser获取html,然后输出的位图即可。

       WebBrowser wb = new WebBrowser();  // 创建一个WebBrowser
wb.ScrollBarsEnabled = false;  // 隐藏滚动条

wb.Navigate("https://twitter.com/");  // 打开网页
wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);  // 增加网页加载完成事件处理函数


     private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser wb = (WebBrowser)sender;
// 网页加载完毕才保存
if (wb.ReadyState == WebBrowserReadyState.Complete)
{
// 获取网页高度和宽度,也可以自己设置
int height = wb.Document.Body.ScrollRectangle.Height;
int width = wb.Document.Body.ScrollRectangle.Width;

// 调节webBrowser的高度和宽度
wb.Height = height;
wb.Width = width;

Bitmap bitmap = new Bitmap(width, height);  // 创建高度和宽度与网页相同的图片
Rectangle rectangle = new Rectangle(0, 0, width, height);  // 绘图区域
wb.DrawToBitmap(bitmap, rectangle);  // 截图

// 保存图片对话框
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "JPEG (*.jpg)|*.jpg|PNG (*.png)|*.png";
saveFileDialog.ShowDialog();

bitmap.Save(saveFileDialog.FileName);  // 保存图片
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: