uniapp使用canvas绘制图片的时候第一次生图片为黑屏,那么就是写法有问题了,这时候需要把uni.canvasToTempFilePath的方法写在canvas.draw()中。
ctx.draw(false, () => {
uni.canvasToTempFilePath({
x: 0,
y: 0,
width: that.windowWidth, // 截取的画布的宽
height: that.windowHeight, // 截取的画布的高
destWidth: that.windowWidth / 2, // 保存成的画布宽度
destHeight: that.windowHeight / 2, // 保存成的画布高度
canvasId: 'myCanvas',
success: (res) => {},
fail: (err) => {}
})
})//绘制
亲测有效,小伙伴赶紧改正回来吧