vue使用html2canvas截图并将图片传给后台

本文档介绍了如何在Vue项目中利用html2canvas库进行网页截屏操作。首先通过npm安装html2canvas,然后在Vue组件中引入并使用。设定要截图的div ID,并编写截图方法,该方法将截取的图片以img元素形式显示,并可下载或上传到后台。详细步骤及代码示例可供参考。

在项目中遇到这方面的需求,参考https://blog.youkuaiyun.com/qq_37600506/article/details/105415753实现的,自己也整理下备忘。

1、首先执行npm install --save html2canvas来进行安装,如果执行过程中有error导致执行不成功,可尝试将npm和node都升级后再执行;

2、执行成功后在vue页面引用,import html2canvas from 'html2canvas';

3、将要截图的DIV设置ID,截图时通过ID来定位;

4、编写截图方法,在需要执行截图的地方调用即可。

 getImg(){
   html2canvas(
     document.getElementById('xxx'),
     {
       backgroundColor:null,//画出来的图片有白色的边框,不要可设置背景为透明色(null)
       useCORS: true,//支持图片跨域
       scale:1,//设置放大的倍数
     }
   ).then(canvas => {
     //截图用img元素承装,显示在页面的上
     let img = new Image();
     img.src = canvas.toDataURL('image/jpeg');// toDataURL :图片格式转成 base64
     document.getElementById('yyy').appendChild(img);
 
     //如果你需要下载截图,可以使用a标签进行下载
     let a = document.createElement('a');
     a.href = canvas.toDataURL('image/jpeg');
     a.download = 'pic';
     a.click();

     //如果需要将图传入后台
     参数 = canvas.toDataURL('image/jpeg');//参数里存储的是图片的BASE64码
   })
 }
}

更多详细内容可参照官网:http://html2canvas.hertzen.com/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值