收藏
评论

画布绘制base64格式的图片,在真机下不显示

使用  ctx.drawImage 绘制,base64格式的图片在开发工具上可以显示,在真机不显示,有什么办法吗?


最后一次编辑于  2018-12-05  (未经腾讯允许,不得转载)
收藏赞 0

6 个评论

  • 是柿子啊
    是柿子啊
    2018-12-05

    canvas不支持base64,真机跟工具是两个不同的终端,建议以真机为准

    2018-12-05
    赞同
    回复 1
    • 瓶子
      瓶子
      2018-12-05

      好吧,谢谢

      2018-12-05
      回复
  • w
    w
    07-24

    本来是来找答案的,无奈只能自己写解决办法。

    方法如下,base64PNG2tempPath('base64图片地址');


    base64PNG2tempPath(base64){

       const fsm = wx.getFileSystemManager();
       base64 = base64.replace("data:image/png;base64,", "");
       const buffer = wx.base64ToArrayBuffer(base64);
       const fileName = wx.env.USER_DATA_PATH + '/test' + Math.random().toString(16).slice(2) +'.png';
       fsm.writeFileSync(fileName, buffer, 'base64');
       return fileName;
     }


    希望官方出解决方法。

    07-24
    赞同 1
    回复
  • Alpha
    Alpha
    09-01

    牛逼,可用

    09-01
    赞同
    回复
  • 早晚有一天
    早晚有一天
    2018-12-24

    1 真机和模拟器不一样 很不方便! 你们的水平就不能解决吗


    2 有什么canvas 绘制 base64的  替代 办法么?

    2018-12-24
    赞同
    回复
  • 卢霄霄
    卢霄霄
    2018-12-05

    writeFile 存成文件,然后再画

    2018-12-05
    赞同
    回复
  • 瓶子
    瓶子
    2018-12-05

    求官方解答疑问

    2018-12-05
    赞同
    回复