为了账号安全,请及时绑定邮箱和手机立即绑定

canvas裁剪图片的一个问题

canvas裁剪图片的一个问题

人到中年有点甜 2018-12-12 14:15:14
想在一张很大的图片中间裁剪出一小块,虽然可以裁剪成功,但是旁边的透明区域、画布大小依然是最初的大小,怎样能保存裁剪出来的那一小块呢?clipComfirm() { //开始剪切    let imgData;    let canvas = document.getElementById('cvsClip');    let cvs = canvas.getContext('2d');    let img = new Image();    img.onload = () =>{        cvs.rect(100,200,1024,600); //rect(x,y,width,height)        cvs.clip();        cvs.drawImage(img,0,0,canvas.width,canvas.height); //drawImage(image, x, y, width, height)        imgData = canvas.toDataURL('image/png');    };    img.src = this.currentImg.img;}如上图,裁剪出来后四周包围着透明区域,整体大小是原画布的大小,如何能不保存透明区域,只要中间的一小块
查看完整描述

1 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

canvas.toDataURL('image/png')是对整个画布的,试试 getImageData 能不能解决


查看完整回答
反对 回复 2019-01-24
  • 1 回答
  • 0 关注
  • 506 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信