小程序canvas踩坑

canvas

画布。该组件是原生组件,使用时请注意相关限制。

的确很多限制!!!


canvas 中很多 API 都是异步执行,这导致很多问题!比如 图片怎么没画上去等等~~~

其中,我踩到的坑:

  • canvasContext.drawImage 不能直接用网络图片(也不能用Base64),需要下用 **wx.downloadFile(OBJECT)** 下载成功后以 tempFilePath 的形式传给页面,res = {tempFilePath: ‘文件的临时路径’},用这个 tempFilePath 才能画图。
  • wx.downloadFile(OBJECT)异步 执行
  • wx.getImageInfo(OBJECT) 也是 异步 执行 getImageInfo相当于先使用downloadFile下载文件再获取图片的信息。如果只是需要临时文件路径,用downloadFile即可,如果还需要更多的图片信息,则使用getImageInfo
  • canvasContext.draw 异步

你可能感兴趣的:(微信小程序)