JS截取页面,并保存到本地

想截取浏览器上内容,并做成图片保存到本地。

可以使用html2canvas.js进行操作。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="~/Jquery/jquery-1.10.2.js"></script>
    <script src="https://cdn.bootcss.com/html2canvas/0.5.0-beta4/html2canvas.js"></script>
</head>
<body>
    @*原始图片*@
    <div class="my-div">
        <img style="width: 400px; height: 300px" src="~/Img/longmao.jpg" />
    </div>
    <br />
    <input type="button" onclick="set()" value="截图" />

    @*截取后存放图片的位置*@
    <img id="img" />

    <script>
        function set() {
            //要转换为图片的dom对象
            var element = document.querySelector(‘.my-div‘);
            //要显示图片的img标签
            var image = document.querySelector(‘#img‘);
            //调用html2image方法
            html2image(element, image);

            function html2image(element, image) {
                html2canvas(element).then(function (canvas) {
                    var imageData = canvas.toDataURL(1);
                    //此时图片已经可以显示了
                    image.src = imageData;
                });
            }
        }
    </script>
</body>
</html>

把数据传入后台,将图片保存到本地。传输后台的数据是Base64的数据,需要转换

        public string Set(string imgdata)
        {
            try
            {
                var strbase64 = imgdata;
                string dummyData = strbase64.Trim().Replace("data:image/png;base64,", "").Replace("%", "").Replace(",", "").Replace(" ", "+");
                if (dummyData.Length % 4 > 0)
                {
                    dummyData = dummyData.PadRight(dummyData.Length + 4 - dummyData.Length % 4, ‘=‘);
                }
                byte[] arr = Convert.FromBase64String(dummyData);

                MemoryStream ms = new MemoryStream(arr);
                Bitmap bmp = new Bitmap(ms);
                var imagePath = AppDomain.CurrentDomain.BaseDirectory + "123.png";
                bmp.Save(imagePath, System.Drawing.Imaging.ImageFormat.Png);

                ms.Close();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                return TAjaxCallBack.ERROR;
            }
        }

原文地址:https://www.cnblogs.com/xiaoyaodijun/p/9268929.html

时间: 2024-11-02 10:48:12

JS截取页面,并保存到本地的相关文章

截取屏幕并保存到本地

/* Capture the screenshot */    UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, YES, 0.0f); if ([self.view drawViewHierarchyInRect:self.view.bounds afterScreenUpdates:YES]){        NSLog(@"Successfully draw the screenshot.");    }

js截图及绕过服务器图片保存至本地(html2canvas)

今天要分享的是用html2canvas根据自己的需求生成截图,并且修复html2canvas截图模糊,以及绕过服务器图片保存至本地. 只需要短短的几行代码,就能根据所需的dom截图,是不是很方便,但是生成的图片模糊 //直接选择要截图的dom,就能截图,但是因为canvas的原因,生成的图片模糊 html2canvas(document.querySelector('div')).then(function(canvas) { document.body.appendChild(canvas);

Asp.Net 将HTML中通过dom-to-image.js标签div内的内容转化为图片保存到本地

由于客户的需求,将js写出来的一个统计能够保存到本地.作为码奴的我只能慢慢搬砖咯!一开始使用的是html2canvas.js.功能是可以实现,但是有缺陷.话不多说开始搞! 1.引入几个JS库 ①:jquery 版本还没试过我用的是3.1.1 (不贴链接了,这个要找很容易) ②:dom-to-image.js (点击下载  下载下来解压开在src目录里面) ③:FileSaver.js (点击下载  下载下来解压开在src目录里面) 2.新建HTML引入第一步中的几个库 3.生成图片 3.1.生成

JS达到Web指定保存的和打印功能的内容

背景 首先,说说文章的背景.近期手中的一个项目,因为需求中要求提供Web界面的打印功能.当然假设没有打印机,还能够提供保存到本地.项目组长把这个"小任务"分给了我.本着努力为组长分忧解难的思想,领了任务之后,就立即開始了工作. 问题 刚開始的时候.组长给了一个工具(jatoolsprinter)让我研究.我用了一个多小时的时间,做出了一个简单的Demo,然后就是各种的測试,因为 web 打印须要浏览器安装 ActiveX 组件.在随后的測试中,我用了几款浏览器.甚至把安全级别都调到了最

Node.js静态页面展示例子2

例程下载:https://files.cnblogs.com/files/xiandedanteng/nodejsStaticHtmlSample.rar 页面效果: Html页面代码(注意用文本编辑器如Editplus3保存文件时要指定编码为UTF-8,否则容易出现乱码): <!DOCTYPE html> <html lang="utf-8"> <meta http-equiv="Content-Type" content="

使用Httpclient实现网页的爬取并保存至本地

程序功能实现了爬取网页页面并且将结果保存到本地,通过以爬取页面出发,做一个小的爬虫,分析出有利于自己的信息,做定制化的处理. 其中需要的http*的jar文件,可以在网上自行下载 import java.io.DataOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import org.apache

python爬取某个网站的图片并保存到本地

python爬取某个网站的图片并保存到本地 #coding:utf-8 import urllib import re import sys reload(sys) sys.setdefaultencoding('gb2312') #获取整个页面的数据 def getHtml (url): page = urllib.urlopen(url) html = page.read() return html #保存图片到本地 def getImg(html): reg = r'src="(.+?\.

如是使用JS实现页面内容随机显示

之前有个客户咨询我,因为他们公司的业务员有多个人,但公司网站的联系方式板块里只够放一个人的信息,所以就想能不能实现这个联系方式信息随机显示,对于业务或客服人员来说也能做到分配均匀公平.本文我们将和大家一起分享,如何使用js控制实现页面内容随机显示. 这里我以本地的蝉知建站系统为例,给大家演示一下实现流程. 首先将想要显示的不同内容分别放到不同的盒子里(div),并用ID属性标记好.例如: <div id="p1"> <p>联系人:张三</p> <

如何使用JS实现页面内容随机显示

之前有个客户咨询我,因为他们公司的业务员有多个人,但公司网站的联系方式板块里只够放一个人的信息,所以就想能不能实现这个联系方式信息随机显示,对于业务或客服人员来说也能做到分配均匀公平.本文我们将和大家一起分享,如何使用js控制实现页面内容随机显示. 这里我以本地的蝉知建站系统为例,给大家演示一下实现流程. 首先将想要显示的不同内容分别放到不同的盒子里(div),并用ID属性标记好.例如: 1 <div id="p1"> 2 <p>联系人:张三</p>