记录一次uniapp中给canvas添加图片内容空白原因
应该适合微信小程序和uniapp
找了半天原因,最后看到一篇文章说,由于画布的大小大于了图片的大小导致了生成的内容是空白的。
最后知道了解决办法就是在写入页面之前将画布大小修改成和要写入的图片大小相同。
如下,vue中动态的修改canvas宽高
<canvas class="cropper-canvas" canvas-id="canvas"
:style="{ height: canvasHeight + 'px', width: canvasWidth + 'px' }"></canvas>
下面是在写入图片之前修改canvas宽高部分代码
this.canvasWidth = dWidth; //将canvas宽度修改成计算完成的图片宽度
this.canvasHeight = dHeight ; //将canvas高度修改成计算完成的图片高度
canvasContext.drawImage(imagePath, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);
canvasContext.draw(false, function(e) {
....写入生成完成的逻辑
});
博客记录了在Uniapp中给Canvas添加图片内容空白的问题,该问题在微信小程序和Uniapp中可能出现。经查找,原因是画布大小大于图片大小。解决办法是在写入页面之前,将画布大小修改成和要写入的图片大小相同,并给出了Vue中动态修改Canvas宽高的代码。
759

被折叠的 条评论
为什么被折叠?



