公司提了图片压缩的需求,在网上查了些资料,用canvas实现了,但发现使用wx.canvasToTempFilePath如果手旅则只是打印图片地址然后点击地址查看图片,或者保存图片至相册再查看图片,拿到的图片就是正常的,但我如果要在压缩后的success回调中使用图片去做一些事情(比如编码wx.getFileSystemManager().readFile、上传至服务器wx.request),拿到的图片就是空白的毕棚。
经过多次调试后发现,是这里的问题
这里需要设置镇辩的多一点。我之前设置的100,即100ms,可能因为上传至服务器是异步的,导致100ms内canvas没法完成图片加载 *** 作,生成的图片就是空白的。改成1000之后,图片有足够长的时间渲染,就不会出现空白图片的问题了。
项目中用canvas生成图片时都为空白,原因枣猛渗为 wx.canvasToTempFilePath必须写在wx.draw()的回调中才能实现。知旁
官方凳脊wx.canvasToTempFilePath说明: https://developers.weixin.qq.com/miniprogram/dev/api/canvas/wx.canvasToTempFilePath.html
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)