前端利用html2Canvas实现截图

html2canvas.js原理是将html转化为Canvas,进而保存图片。附上html2canvas官网地址 http://html2canvas.hertzen.com

下面是一些常用的配置

NameDefaultDescription
allowTaintfalse是否允许跨域
backgroundColor#ffffff画布背景色(如果未在DOM中指定)。设置null为透明
canvasnull现有canvas元素用作绘图的基础
imageTimeout15000加载图像的超时时间(以毫秒为单位)。设置0为禁用超时
proxynull代理将用于加载跨域图像的网址。如果留空,则不会加载跨域图像。
scalewindow.devicePixelRatio用于渲染的比例尺。默认为浏览器设备像素比率
useCORSfalse是否尝试使用CORS从服务器加载图像
widthElement width 
heightElement height 
xElement x-offset裁剪画布X坐标
yElement y-offset裁剪画布Y坐标

例子:

  //截图
    takeScreenshot() {
      let _self = this;
      return html2canvas(_self.$refs.echartsView, {
        // width: 1920,
        // height: 1920,
        backgroundColor: null,
        useCORS: true, // 解决文件跨域问题
      }).then((canvas) => {
        _self.url = canvas.toDataURL("image/png"); // 生成的图片

        return new Promise((resolve, reject) => {
          resolve(_self.url);
        });

        // 可以上传后端或者直接显示
        // this.imgUrl = url
      });
    },

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值