收藏
回答

canvas转图片保存相册,fail:toast can't be found,真机调试有问题?

小程序用canvas生成二维码,点击二维码后将canvas转成图片并保存到用户相册。

开发者工具中调试运行无问题,无报错,图片可以保存到电脑,手机扫描也可以正常显示

然而在真机调试中,点击图片后,可以保存到相册,但存在以下问题

1.PC端真机调试对话框报错

2.保存到手机中的二维码图片无法扫描,使用微信扫描打开相无法显示

(第一个图是微信扫码打开相册的效果,前6个黑的是二维码图片。第二个是在手机相册,可以正常查看),且用支付宝、浏览器等扫描工具也都显示识别不到二维码,微信、QQ发送图片发送出来的也是全黑


canvas转图片保存相册代码如下,二维码生成模块使用的 wxbarcode

saveQrcode:function(e){
    wx.canvasToTempFilePath({
      x0,
      y0,
      width400,
      height400,
      destWidth750,     
      destHeight750,   
      canvasId'qrcode',
      success:res=>{
        console.log(res.tempFilePath)
        wx.saveImageToPhotosAlbum({
          filePath: res.tempFilePath,
          success:res=>{
            wx.showToast({
              title'已经保存到相册啦',
              icon:'success',
              mask:true
            })
            setTimeout(function () {
              wx.hideToast()
            },1500)
          },
        })
      },
      fail:res=>{
        wx.showToast({
          title'好像没点到,再试一下',
          icon:'none',
          mask:true
        })
        setTimeout(function () {
          wx.hideToast()
        },1500)
      }
    })
  },


已经更新到2003121版本,手机型号荣耀v20,刚找了个荣耀10也是同样的问题,因为现在比较晚了暂时找不到别的手机了。PC平台win10

这是wxbarcode的问题吗?还是开发工具的问题,还有最前面的莫名报错。希望尽快回复,感谢

最后一次编辑于  03-13
回答关注问题邀请回答
收藏

1 个回答

  • 社区技术运营专员-Ltt
    社区技术运营专员-Ltt
    03-14

    请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    03-14
    有用
    回复 1
    • 夜雪
      夜雪
      03-14
      我觉得提问里已经描述的很清楚了。。。
      另外我后来也试了一下把canvas转图片的代码写到canvas.draw的回调函数里,it doesn't work yet

      https://developers.weixin.qq.com/s/CT884Qmu7nfF
      希望能有一些非机器人样式的回复
      03-14
      回复
登录 后发表内容
问题标签