• 将网页保存成图片


    新建一个win Form应用程序

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

    namespace Snowdream.Sample.WebpageSnapshot
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    /// <summary>
    /// 按钮按下事件处理函数
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void SaveSnapshot_Click(object sender, EventArgs e)
    {
    WebBrowser webBrowser = new WebBrowser(); // 创建一个WebBrowser
    webBrowser.ScrollBarsEnabled = false; // 隐藏滚动条
    webBrowser.Navigate(address.Text); // 打开网页
    webBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser_DocumentCompleted); // 增加网页加载完成事件处理函数
    }


    /// <summary>
    /// 网页加载完成事件处理函数
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
    WebBrowser webBrowser = (WebBrowser)sender;

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

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

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

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

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



  • 相关阅读:
    (转)viso 形状搜索 无法使用 的解决办法
    Visio 2003 直线需要相交时的设置方法
    C# Serialport执行close()方法时,程序卡死的解决办法
    RabbitMQ核心技术总结
    kafka核心原理总结
    hadoop的价值在哪里
    从程序员小仙飞升上神,java技术开发要如何实现?
    明年大数据行业的趋势会是哪些?
    2016年末程序员应该知道的基本架构思想
    2016年末程序员突破自我的绝密方法分享
  • 原文地址:https://www.cnblogs.com/xingbinggong/p/2270828.html
Copyright © 2020-2023  润新知