• 【JQuery插件】把网页或某div或table表格内容转为图片并下载


    今天介绍一个非常好用的JQuery插件,它可以把网页或某个div或table表格内容转为图片并下载保存。这个插件叫 html2canvas ,它只有一个js文件 html2canvas.js ,而使用起来也非常简单。

    先看一个实例html代码,后面再介绍如何使用。

    <html>
    <head>
    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <script src="html2canvas.js"></script>
    </head>
    <body>
    
    <div id="html-content-holder" style="background-color: #F0F0F1; color: #00cc65;  500px; padding-left: 25px; padding-top: 10px;padding-right: 25px;padding-bottom: 15px;margin-bottom:15px;">
      <strong>卡卡网 WebKaka.com</strong><hr/>
      <h3 style="color: #3e4b51;">
        Html转换为图片
      </h3>
      <p style="color: #3e4b51;">
        <b>卡卡网 WebKaka.com</b> 旨在为广大网站建设人员提供专业的网站测速和优化服务,以及为广大网民提供网络速度测试服务。
      </p>
      <p style="color: #3e4b51;">
        <b>html2canvas</b> 脚本可以直接在用户浏览器上用来对网页或其一部分内容进行截图,截图是基于DOM的,因此可能不完全准确。
      </p>
    </div>
    
    <input id="btn-Preview-Image" type="button" value="预 览"/>
    <a id="btn-Convert-Html2Image" href="#">下载</a>
    <br/>
    <h3>预 览 :</h3>
    <div id="previewImage"></div>
    
    <script>
    $(document).ready(function(){
    
    var element = $("#html-content-holder"); // global variable
    var getCanvas; // global variable
    
    $("#btn-Preview-Image").on('click', function () {
    html2canvas(element, {
    onrendered: function (canvas) {
    $("#previewImage").append(canvas);
    getCanvas = canvas;
    }
    });
    });
    
    $("#btn-Convert-Html2Image").on('click', function () {
    var imgageData = getCanvas.toDataURL("image/png");
    // Now browser starts downloading it instead of just showing it
    var newData = imgageData.replace(/^data:image/png/, "data:application/octet-stream");
    $("#btn-Convert-Html2Image").attr("download", "your_pic_name.png").attr("href", newData);
    });
    
    });
    
    </script>
    </body>
    </html>

    下面介绍如何使用该插件,主要有三步。

    第一步:调用jquery库文件和html2canvas.js文件

    jquery库文件可以调用百度公共库的文件,而html2canvas.js文件需要下载到本地来调用,本文后面会附上下载地址。

    代码如下:

    <script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
    <script src="html2canvas.js"></script>

    第二步:预览和下载的html代码

    点击“预览”可看到生成的图片,点击“下载”可把图片下载保存起来。

    代码如下:

    <input id="btn-Preview-Image" type="button" value="预 览"/>
    <a id="btn-Convert-Html2Image" href="#">下载</a>
    <br/>
    <h3>预 览 :</h3>
    <div id="previewImage">
    </div>

    第三部:生成和下载图片的JQuery实现代码

    代码如下:

    <script>
    $(document).ready(function(){
    
    //这是要转成图片的div id
    var element = $("#html-content-holder");  
    var getCanvas;
    
    //这是预览按钮的id
    $("#btn-Preview-Image").on('click', function () {
    html2canvas(element, {
    onrendered: function (canvas) {
    //这是显示预览图的id
    $("#previewImage").append(canvas);
    getCanvas = canvas;
    }
    });
    });
    
    //这是下载图片的id
    $("#btn-Convert-Html2Image").on('click', function () {
    var imgageData = getCanvas.toDataURL("image/png");
    // Now browser starts downloading it instead of just showing it
    var newData = imgageData.replace(/^data:image/png/, "data:application/octet-stream");
    $("#btn-Convert-Html2Image").attr("download", "your_pic_name.png").attr("href", newData);
    });
    
    });
    
    </script>
  • 相关阅读:
    Js 时间轴和拓扑图
    JQuery OLAP Grid
    Jquery Datatables 动态列名
    CSS3实用菜单
    图片翻转动画
    Java转C#的最佳工具
    Mvc.JQuery.Datatables
    推荐windows下的日志跟踪工具:SnakeTail
    在.net中使用aquiles访问Cassandra(四)
    在.net中使用aquiles访问Cassandra(三)
  • 原文地址:https://www.cnblogs.com/panziwen/p/13297196.html
Copyright © 2020-2023  润新知