小程序
小游戏
企业微信
微信支付
扫描小程序码分享
怀疑canvas绘制顺序有问题
代码片段里
上面是canvas
中间是重新绘制按钮
下面是wx.canvasToTempFilePath导出的图片
点击多几次按钮,会出现样式不按照代码表现,样式错乱,并且画布和图片不一致的情况
其他类似问题
Canvas连续fillText样式不一致
canvas绘制顺序在安卓上有bug
小程序里面的canvas是异步的?
希望官方尽快定位并且解决
5 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
我排查了好几天了,终于找到问题了。是draw回调的问题。安卓机正常绘图不会出现所谓的样式错乱问题,是最后draw用wx.canvasToTempFilePath 来导出图片的时候就错乱了。 主要是draw 回调无法等 canvas 完全绘制完毕 再调用wx.canvasToTempFilePath。 所以我在回调那里 加个了定时器 延迟100ms 再导出图片,发现不会再错乱了。 这大概也是小程序的一个坑吧
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
这样吗, 好像当时我也对` wx.canvasToTempFilePath` 加过`setTimeout` 也不行, 不过不是很确定
我现在不会出现这种情况了。 你要在draw 回调那里 加个定时器 在写wx.canvasToTempFilePath
我现在不会出现这种情况了。 你要在draw 回调那里 加个定时器 在写wx.canvasToTempFilePath。 还是不行你每操作一步就直接调用draw绘画出来,一步一步画出来就保证前面的不会出错了,画笔样式每次都重新赋值给他
好的, 3q
有用 感谢
我也不行
模拟器上是正常的, 真机我的小米5不行
机型是小米5, 微信版本是6.6.6, 安卓7.0, MIUI 9.5
你好,请提供一下出现问题的机型和微信版本
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
我排查了好几天了,终于找到问题了。是draw回调的问题。安卓机正常绘图不会出现所谓的样式错乱问题,是最后draw用wx.canvasToTempFilePath 来导出图片的时候就错乱了。 主要是draw 回调无法等 canvas 完全绘制完毕 再调用wx.canvasToTempFilePath。 所以我在回调那里 加个了定时器 延迟100ms 再导出图片,发现不会再错乱了。 这大概也是小程序的一个坑吧
这样吗, 好像当时我也对` wx.canvasToTempFilePath` 加过`setTimeout` 也不行, 不过不是很确定
我现在不会出现这种情况了。 你要在draw 回调那里 加个定时器 在写wx.canvasToTempFilePath
我现在不会出现这种情况了。 你要在draw 回调那里 加个定时器 在写wx.canvasToTempFilePath。 还是不行你每操作一步就直接调用draw绘画出来,一步一步画出来就保证前面的不会出错了,画笔样式每次都重新赋值给他
好的, 3q
有用 感谢
我也不行
模拟器上是正常的, 真机我的小米5不行
机型是小米5, 微信版本是6.6.6, 安卓7.0, MIUI 9.5
你好,请提供一下出现问题的机型和微信版本