一般是canvas还没渲染,你可以draw方法提供的回调中再调用wx.canvasGetImageData
wx.canvasGetImageData获取data值全是0,怎么解决起因,我想做一个ocr工具,但是各大官方的ocr api都要求图片必须用base64转换后提交,但是微信小程序没有办法再本地进行base64转换,百度找到一篇帖子,说,用以前方法: 1. 绘制图片至canvas 2. 获取canvas上图像数据 3. 使用开源库[UPNG](https://github.com/photopea/UPNG.js)对原始图像数据进行png编码 4. png编码后数据进行base64编码 但是,我再第一步时获取canvas的data值时全是0,不知道该怎么办, 请问 wx.canvasGetImageData获取data值全是0,怎么解决,
2018-06-07现在我也碰到了这个问题,请问解决了吗?
自定义组件中canvas的canvasGetImageData获取不到数据小程序代码: wx.canvasGetImageData({ canvasId: 'PaperCanvas', x: 0, y: 0, width: 100, height: 100, success:function(res) { console.log(res.width) // 100 console.log(res.height) // 100 console.log(res.data instanceof Uint8ClampedArray) // true console.log(res.data.length) // 100 * 100 * 4 let pngData = upng.encode([res.data.buffer], res.width, res.height) let base64 = wx.arrayBufferToBase64(pngData) }, fail: function (res) { console.log(res); return '' } }, this) 运行后报错: errMsg:"canvasGetImageData: fail canvas is empty" 请帮忙解答,多谢各位!
2018-05-27