canvas绘制保存到本地文件中图片,若图片保存本地文件路径不变,则之后绘制出的和第一次绘制的相同
发布于 5 年前 作者 yzhu 14732 次浏览 来自 官方Issues

使用canvas绘制带小程序码的海报时,从后台获取到了带相应场景值的小程序码base64图片,

把小程序码使用wx.getFileSystemManager().writeFileSync(filePath, base64图片, 'base64')写到本地文件中,

若filePath使用固定的 wx.env.USER_DATA_PATH +'/xx.png' 路径保存,则后面用canvas把小程序码绘制到海报上时,一直为第一次绘制的小程序码。

若filePath使用随机的 wx.env.USER_DATA_PATH '/' + (new Date().getTime()) + '.png' 路径保存,则后面用canvas把小程序码绘制到海报上时,小程序码正确。






1 回复
应该是canvas.drawImage缓存问题吧。

你还是用临时文件的方式,writeFileSync就draw,draw后FileSystemManager.unlink掉这个临时文件了,这样应该不会超过限制吧
回到顶部