遇到同样的问题,canvas放在组件内 draw() 回调不执行,放在 page内,可以
安卓 canvas组件draw函数的回调不执行canvas遮挡了底部按钮,canvas在组件的组件内,按钮在页面 方法一: cover-view包裹页面按钮,ios没问题,安卓还是被canvas遮挡;又把按钮放到组件内,嵌套在canvas内还是被遮挡; 方法二: 2、canvas转图片,ios没问题,安卓draw()的回调不执行,下面的代码只能打印到‘开始画’,然后就是fail了。 查了论坛,发现近期很多人碰到canvas的draw()回调不执行的问题,希望官方大大能看到这篇文章,并排查一下问题。多谢~ setTimeout(() => { console.log('开始画'); ctx.draw(true, () => { console.log('开始转换'); wx.canvasToTempFilePath({ x: 0, y: 0, width: 690, height: 552, canvasId: canvasId, success: res => { console.log('success', res.tempFilePath) }, fail: err => { // eslint-disable-next-line console.log('fail', err, err.stack); } }, this); }); }, 4000);
2018-11-29遇到同样问题,只出现在安卓机上
drawImage的问题 关于图片等比缩放 真机预览缩小不正确 放大是正确的官方文档中 drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) 从 1.9.0 起支持 number dx图像的左上角在目标 canvas 上 x 轴的位置 number dy图像的左上角在目标 canvas 上 y 轴的位置 number dWidth在目标画布上绘制图像的宽度,允许对绘制的图像进行缩放 number dHeight在目标画布上绘制图像的高度,允许对绘制的图像进行缩放 number sx源图像的矩形选择框的左上角 x 坐标 number sy源图像的矩形选择框的左上角 y 坐标 number sWidth源图像的矩形选择框的宽度 number sHeight源图像的矩形选择框的高度 然而真实调用的结果是 [图片] 开发工具显示正常 [图片] 手机上的效果 如果没有理解错的话sWidth, sHeight这两个参数是类似选择图片时的裁剪功能 裁剪的宽度和高度,裁剪是正确的,但是手机预览确不能根据画框等比缩小,放大是正常的 有没有遇到相同问题的而且已经解决的 或者是我理解错了
2018-10-24