Asp.Net获取网站截图的实例代码

代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private WebBrowser _webBrowser;
        public Form1()
        {
            InitializeComponent();
        }
        public void GetThumbNail(string url)
        {
            _webBrowser = new WebBrowser();
            _webBrowser.ScrollBarsEnabled = false; //不显示滚动条
            _webBrowser.Navigate(url);
            _webBrowser.DocumentCompleted = new WebBrowserDocumentCompletedEventHandler(Completed);
            while (_webBrowser.ReadyState != WebBrowserReadyState.Complete)
            {
                System.Windows.Forms.Application.DoEvents(); //避免假死,若去掉则可能无法触发 DocumentCompleted 事件。
            }
        }
        public void Completed(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            //设置浏览器宽度、高度为文档宽度、高度,以便截取整个网页。
            _webBrowser.Width = _webBrowser.Document.Body.ScrollRectangle.Width;
            _webBrowser.Height = _webBrowser.Document.Body.ScrollRectangle.Height;
            using (Bitmap bmp = new Bitmap(_webBrowser.Width, _webBrowser.Height))
            {
                _webBrowser.DrawToBitmap(bmp, new Rectangle(0, 0, bmp.Width, bmp.Height));
                bmp.Save("Capture.png", System.Drawing.Imaging.ImageFormat.Png);
                pictureBox1.ImageLocation = "Capture.png";
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            GetThumbNail(textBox1.Text);
        }
    }
}

(0)

相关推荐

  • js插件Jcrop自定义截取图片功能

    当初说这个需求的时候,在网上找了一点资料,但是基本上感觉不符合项目中的需求.参照一些项目,和同事的改造,终于是像点样子了. 截图大致截为3个像素,每个像素使用的地方也不同,考虑图片不会是很多,分别压缩保存下来. 根据截取的像素位置,对应的压缩成相应的图片: 首先需要下载Jcrop.js与uploadify.js 上传图片的插件和截图的插件 Comm_UploadJcrop.js //剪裁头像对象和宽高比例 var jcrop_api, boundx, boundy; //上传图片 //Id:上传

  • jQuery jcrop插件截图使用方法

    在后台来进行图片切割.头像截取的原理:在前台使用jcrop获取切面的x轴坐标.y轴坐标.切面高度.切面宽度,然后将这四个值传给后台.在后台要进行放大处理:将切面放大N倍,N=原图/前台展示的头像.即X = X*原图宽/前图宽,Y = Y*原图高/前图高,W = W*原图宽/前图宽,H = H*原图高/前图高.实例:JSP: 复制代码 代码如下: <div id="cutImage" style="display: none;"> <div clas

  • jcrop 网页截图工具(插件)开发

    今天给大家介绍一下一个web 中经常会用到的截图(如:头像等)工具: Jcrop演示 项目结构: 效果图: 这个很有用: 看到这些,大家也想自己试试吧 =========================================== 代码部分: =========================================== 准备工作: 下载:Jcrop-0.9.10 (zip format) 解压后放入到你的项目里面,就如上面的项目结构一样... /Jcrop/WebContent

  • asp.net截屏功能实现截取web页面

    本文实例展示了asp.net截屏功能实现截取web页面的方法,代码简洁易懂,分享给大家供大家参考. 具体实现代码如下: using System.Drawing; //打开该页面 System.Diagnostics.Process.Start("IEXPLORE.EXE", "http://localhost:56/Spacxxe.html"); System.Threading.Thread.Sleep(3000); //截屏 //创建并设置画布大小 Syste

  • Asp.Net获取网站截图的实例代码

    复制代码 代码如下: using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsFormsApplication1{    public partial class Form1 : Form    {    

  • ASP.NET操作MySql数据库的实例代码讲解

    一.把MySql.Data.dll放到BIN目录下. 二.这是aspx.cs的全部源码,修改参数直接运行即可!   using MySql.Data.MySqlClient; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; publ

  • dedecms页面如何获取会员状态的实例代码

    dedecms页面如何获取会员状态的实例代码 前几天做了一个企业网站,导航栏增加了会员信息,如: 已登陆:显示:欢迎<会员名> 未登陆 显示: 请登录 代码如下: 复制代码 代码如下: {dede:php} require_once(DEDEMEMBER."/config.php"); $uid = $cfg_ml->M_LoginID; if(!$uid){ echo ' <div><a class="login-button"

  • AJAX跨域请求JSONP获取JSON数据的实例代码

    Asynchronous JavaScript and XML (Ajax) 是驱动新一代 Web 站点(流行术语为 Web 2.0 站点)的关键技术.Ajax 允许在不干扰 Web 应用程序的显示和行为的情况下在后台进行数据检索.使用XMLHttpRequest 函数获取数据,它是一种 API,允许客户端 JavaScript 通过 HTTP 连接到远程服务器.Ajax 也是许多 mashup 的驱动力,它可将来自多个地方的内容集成为单一 Web 应用程序. 不过,由于受到浏览器的限制,该方法

  • jQuery获取随机颜色的实例代码

    1.js //获取十六进制颜色 function randomColor1(){ var r = Math.floor(Math.random()*256); var g = Math.floor(Math.random()*256); var b = Math.floor(Math.random()*256); if(r < 16){ r = "0"+r.toString(16); }else{ r = r.toString(16); } if(g < 16){ g =

  • java实现爬虫爬网站图片的实例代码

    第一步,实现 LinkQueue,对url进行过滤和存储的操作 import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.List; import java.util.Set; public class LinkQueue { // 已访问的 url 集合 private static Set<String> visitedUrl = Collecti

  • JS获取当前时间的实例代码(昨天、今天、明天)

    1.时间格式化 //昨天的时间 var day1 = new Date(); day1.setTime(day1.getTime()-24*60*60*1000); var s1 = day1.getFullYear()+"-" + (day1.getMonth()+1) + "-" + day1.getDate(); //今天的时间 var day2 = new Date(); day2.setTime(day2.getTime()); var s2 = day2

  • springBoot+webMagic实现网站爬虫的实例代码

    前端时间公司项目需要抓取各类数据,py玩的不6,只好研究Java爬虫方案,做一个总结. 开发环境: springBoot 2.2.6.jdk1.8. 1.导入依赖 <!--WebMagic核心包--> <dependency> <groupId>us.codecraft</groupId> <artifactId>webmagic-core</artifactId> <version>0.7.3</version&g

  • C#微信小程序服务端获取用户解密信息实例代码

     C#微信小程序服务端获取用户解密信息实例代码 实现代码: using AIOWeb.Models; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; namespace AIOWe

  • js实时获取窗口大小变化的实例代码

    如下所示: $(window).resize(function(){ var Height = $(window).height(); var Width = $(window).width(); }) 以上这篇js实时获取窗口大小变化的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

随机推荐