canvas绘图样式出错,京东购物也是这样!
发布于 6 年前 作者 xiuyingjin 12604 次浏览 来自 问答

我们最近在绘制canvas的时候,发现在安卓手机上有时候会出现canvas绘制出来的样式会错乱的问题。

在安卓手机上点多几次都会复现。在IOS手机下没有这个问题。

文档中的setFontSize改成了ctx.font,但是在手机上无法展示效果,文档也找不到在哪里。

通过搜索才发现是跳转到之前的文档。但是之前的文档也没找到fillStyle这个属性,只有setFillStyle。

希望官方能解答一下这个关于canvas的问题。

5 回复

遇到同样问题,期待官方尽快解决

初步发现,在canvas的draw之后的回调中,应该是draw的第一笔刚画上去就执行了回调,而不是等draw之后渲染完才执行回调。

所以调用wx.canvasToTempFilePath时,苹果手机由于性能较高,绘画渲染速度快,所以直接调用wx.canvasToTempFilePath不会出现样式错乱问题,但是安卓机由于渲染速度慢,所以可能在渲染完成前就将canvas转成图片了,导致样式错乱。

解决方案:在安卓机上的wx.canvasToTempFilePath延迟300ms~500ms执行,在苹果手机上正常执行。

我也遇到了:第一张是正常效果,第二、三张就乱了。Android和iOS都出现过,不一定和性能有关!

一直有问题,偶现

遇到同样的问题,安卓偶尔出现

回到顶部