canvas 画多张照片的时候 有时候会出现画不上去的问题?

发布于 7 年前作者 qtian12102 次浏览最后编辑 7 年前来自 issues

70% -80%时候是好的

偶尔就会出现图片没有画好也进入callback了

图片都已经getImageInfo 获取临时路径了

有遇到过同样问题的朋友吗

补充:

这里是循环进来的 数据 photoSrc的数量是1-6

补充:

感谢 Xiushan Li 的解答

我们把白色的方框看做拼图的图片位置

紫色位置为边框  层级是最高的

图片只能放在边框里 互相不影响 图片可以移动 放大

5 回复
yong37
yong371 楼6 年前

https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

按这个弄个 能复现的 代码片段 分享上了

guiyingshi
guiyingshi2 楼6 年前

回调放个setTimeout

tempCtx.draw(true, setTimeout(() =>{resolve()},500)

jingyi
jingyi3 楼6 年前

图片都sync完以后 一起画上去。 draw都是异步的, 调多了有时候会掉。

如果嫌用户体验不好,就先画一个骨架, 然后sync图片, 最后一起画上去

acao
acao4 楼6 年前

我以前也碰到过,个人认为是canvasToTempFilePath接口的调用会影响下一次的draw,你可以试试在canvasToTempFilePath的成功回调后resolve再进行下一次draw

lei78
lei785 楼5 年前

这些canvas的api还有异步的吗 应该没有了吧