收藏
回答

Canvas 在真机上 canvasPutImageData 的报错

问题模块 框架类型 问题类型 操作系统 工具版本
开发者工具 小程序 Bug Windows 2.6.6

- 当前 Bug 的表现(可附上截图)

在微信开发者工具中使用canvasPutImageData是能够正常使用的

到了真机模拟后就会报canvasPutImageData: invalid data format

- 预期表现


- 复现路径


- 提供一个最简复现 Demo




最后一次编辑于  04-16  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

2 个回答

  • 是柿子啊
    是柿子啊
    04-16

    麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    04-16
    赞同
    回复 8
    • Pino
      Pino
      04-16

      测试机型 Sony XZ (微信版本 7.0.3 系统版本 android 8.0.0)iphone6 Plus (微信版本7.0.3  系统版本10.0.1) 代码片段(https://developers.weixin.qq.com/s/B1CI6Fmg7d7c

      04-16
      回复
    • 墨染绘手
      墨染绘手
      04-16

      我也遇到了相同的问题 机型小米6,微信版本7.0.3,系统版本 Android8.0.0

      04-16
      回复
    • 是柿子啊
      是柿子啊
      04-16回复Pino

      报错信息是?这边操作没复现

      04-16
      回复
    • Pino
      Pino
      04-16回复是柿子啊

      代码片段 的工具上和实机上的log 实机上直接回调都没有执行

      原问题的情况则是会调用到,但是报错了


      04-16
      回复
    • Pino
      Pino
      04-19回复是柿子啊

      想问一下后续怎么样了

      04-19
      回复
    查看更多(3)
  • 师傅
    师傅
    05-04

    找到问题了X、Y、width、height的值不能带有小数点,只要带有小数点就会报错(canvasPutImageData: invalid data format)可以使用Math.ceil()去除小数点

    wx.canvasPutImageData({
      canvasId: 'myCanvas',
      x: 0,
      y: 0,
      width: 200,
      height:150,
      data,
      success(res) {}
    })


    05-04
    赞同
    回复