Canvas在Antd design Pro中使用(基于React)

问题1、canvas.drawImage(img, x,y);canvas绘制的img没有出现在x、y值指定的位置。
 ctx.drawImage(img, x,y);

解决:1、canvas 必须在获取元素之后明确指定宽高值,如果在标签中已经写了width,height,还是需要重新指定宽高值。
2、标签中的宽高值,数值要与代码中指定的值大小相同。(否则也会出现坐标点绘制错乱的情况)

 var canvas = document.getElementById('tutorial');
 //如果不指定canvas宽度,高度,会出现drawimg的xy坐标跟值不对应的问题。
 canvas.width = 1000;
 canvas.height = 1000;
 <canvas
      id='tutorial'
      style={{width: '1000px', height: '1000px', border: '1px solid black'}}>
      您的浏览器暂不支持canvas
 </canvas>
问题2、img 标签动态指定图片不显示
 let img = new Image();
 let imgDress=ev.dataTransfer.getData("imgString");//动态获取到的img地址,eg:../../../assets/icon/s1.png
 img.src = require(imgDress)

解决:把图片的路径写到外面,动态拿到图片名字,拼接出图片地址。

 let img = new Image();
 let imgDress=ev.dataTransfer.getData("imgString");//eg:s1.png
 img.src = require("@/assets/icon/"+imgDress);//需要把"@/assets/icon/" 地址提取出来,
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值