栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

WebBrowser实现网页截图

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

WebBrowser实现网页截图

引用

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

代码

public class WebsiteToImage
{
 private string m_Url;
 private string m_FileName = string.Empty;

 public WebsiteToImage(string url, string fileName)
 {
     m_Url = url;
     m_FileName = fileName;
 }

 private void _Generate()
 {
     var browser = new WebBrowser {ScrollBarsEnabled = false};
     browser.Navigate(m_Url);
     browser.documentCompleted += WebBrowser_documentCompleted;

     while (browser.ReadyState != WebBrowserReadyState.Complete)
     {
  Application.DoEvents();
     }

     browser.Dispose();
 }

 private void WebBrowser_documentCompleted(object sender, WebBrowserdocumentCompletedEventArgs e)
 {
     var browser = (WebBrowser) sender;browser.ClientSize = new Size(browser.document.Body.ScrollRectangle.Width,browser.document.Body.ScrollRectangle.Bottom);
     browser.ScrollBarsEnabled = false;

     if (browser.ReadyState == WebBrowserReadyState.Complete)
     {
   // 获取网页高度和宽度,也可以自己设置
   int height = browser.document.Body.ScrollRectangle.Height;
   int width = browser.document.Body.ScrollRectangle.Width;

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

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

   bitmap.Save(m_FileName);  // 保存图片
     }
 }
}

调用

static void Main(string[] args)
{
    var url = "https://product.suning.com/0000000000/10398812002.html";
    var fileName = $@"D:保存网页图片{DateTime.Now.ToString("yyyyMMddHHmmssfff")}.png";
    WebsiteToImage websiteToImage = new WebsiteToImage($"{url}",fileName);
    websiteToImage.Generate();
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/231324.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号