使用js将html代码一键截成图片(canvas)

先上演示链接,demo
依赖:

  1. jquery
  2. html2canvas.js ====>官网github https://github.com/ni....,网络不好的,链接:传送门
    提取码:4fsc
$(function () {
        //id btn触发点击事件
        $("#btn").click(function () {
                        //将用canvas绘制的容器
            html2canvas($("#card-main").get(0)).then(function (canvas) {
                document.body.appendChild(canvas);
                var url = canvas.toDataURL();//图片地址
                var timestamp = Date.parse(new Date());
                $("#downA").attr('href', url);
                //下载下来的图片名字
                $("#downA").attr('download', timestamp + '.png');
                $("#downA").get(0).click()
            });
        });
    })
解读:

html2canvas.js可将一个元素渲染为canvas,只需要调用html2canvas(element[, options]);
将目标元素生成为canvas元素后,调用canvas.toDataURL()方法,即生成图片的地址(base64格式,浏览器可以直接打开),然后通过a链接模拟点击下载即可

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,047评论 1 45
  • PNG 有PNG8和truecolor PNG PNG8类似GIF颜色上限为256,文件小,支持alpha透明度,...
    hudaren阅读 5,601评论 0 0
  • 本文适用人群 需要在微信wap页开发分享海报功能的前端程序员们 想要了解html2canvas库的吃瓜群众 挣扎在...
    朝颜vivian阅读 13,454评论 4 17
  • 这几天在做入学诊断测试报告,需要将页面转成图片做分享,首先会想到到的方案有: 1、利用canvas重新绘制整个页面...
    yschen阅读 4,743评论 0 1
  • $HTML, HTTP,web综合问题 1、前端需要注意哪些SEO 3、HTTP的几种请求方法用途 4、从浏览器地...
    peng凯阅读 4,106评论 0 1