微信小程序 canvas生成图片是空白的

微信小程序 canvas生成图片是空白的,第1张

参考文章: 微信小程序 canvas 绘图问题总结

公司提了图片压缩的需求,在网上查了些资料,用canvas实现了,但发现使用wx.canvasToTempFilePath如果手旅则只是打印图片地址然后点击地址查看图片,或者保存图片至相册再查看图片,拿到的图片就是正常的,但我如果要在压缩后的success回调中使用图片去做一些事情(比如编码wx.getFileSystemManager().readFile、上传至服务器wx.request),拿到的图片就是空白的毕棚。

经过多次调试后发现,是这里的问题

这里需要设置镇辩的多一点。我之前设置的100,即100ms,可能因为上传至服务器是异步的,导致100ms内canvas没法完成图片加载 *** 作,生成的图片就是空白的。改成1000之后,图片有足够长的时间渲染,就不会出现空白图片的问题了。

图片还没读取完毕就执行了戚备绘图 *** 作。根据查询姿汪canvas的相关信息得知,canvas部分手机白屏是因为图片还没读取完毕就执行了高册毁绘图 *** 作。Canvas中文名叫“画布”,是HTML5新增的一个标签。Canvas允许开发者通过JS在这个标签上绘制各种图案。

项目中用canvas生成图片时都为空白,原因枣猛渗为 wx.canvasToTempFilePath必须写在wx.draw()的回调中才能实现。知旁

官方凳脊wx.canvasToTempFilePath说明: https://developers.weixin.qq.com/miniprogram/dev/api/canvas/wx.canvasToTempFilePath.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12430092.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存