收藏
回答

canvas.toTempFilePathSync图片在真机显示不出来

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小游戏 Bug toTempFilePathSync 客户端 6.7.1 2.2.5

用toTempFilePathSync方法生成的临时文件地址,在小工具上是这样的在真机上显示的是,我把这个图片drawImage到画布上,结果手机上就不能正常显示这个图片,而小工具上能显示这个图片,请问这是怎么回事?


最后一次编辑于  2018-09-05  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

4 个回答

  • 娇华
    娇华
    2018-09-05

    你好,请提供一下出现问题的机型和微信版本,以及能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2018-09-05
    赞同
    回复 4
    • 雪
      2018-09-11

      wechatide://minicode/B2h0ElmX7t2r代码片段是可以的,但是在小游戏环境(无appid),小工具是可以保存的,真机不行,我的手机机型是iphone8,微信版本6.7.1。请问这是什么原因呢

      2018-09-11
      回复
    • 娇华
      娇华
      2018-09-11回复

      所以现在的问题是iphone8,微信版本6.7.1无法保存图片?

      2018-09-11
      回复
    • 雪
      2018-09-11回复娇华

      我用安卓机试也不行啊,都是真机有问题,显示image load fail,为什么小工具可以呢,以下是真机调试显示结果

      2018-09-11
      回复
    • 雪
      2018-09-17回复娇华

      想问一下,一样的代码,为什么我用cocos的canvas  .toTempFilePathSync方法 生成的路径就是上面的一大堆数字,而用代码片段里面的canvas.toTempFilePathSync 就可以呢


      2018-09-17
      回复
  • 雨中的鱼
    雨中的鱼
    2018-09-06

    let that = this;

       console.log(that.data.imgPath)

       const ctx = wx.createCanvasContext('myCanvas');

       ctx.drawImage(that.data.imgPath, 0, 0, 150, 150);

       ctx.draw(true, function () {

         wx.canvasToTempFilePath({

           x: 0,

           y: 0,

           width: 150,

           height: 150,

           destWidth: 150,

           destHeight: 150,

           canvasId: 'myCanvas',

           success: function (res) {

             console.log(res.tempFilePath)

             wx.saveImageToPhotosAlbum({

               filePath: res.tempFilePath,

               success(res) {

                 console.log(res)

               }, fail(res) {

                 console.log(res)

               }

             })

           }, fail(res) {

             console.log('canvasToTempFilePath', res)

           }

         })


       });


    我也是遇到同样的问题,开发工具能显示图片,保存图片,到真机就不能显示图片到画布上面了,that.data.imgPath  是图片base64内容, 要是正常图片路径就可以显示,base64真机显示不了到画布,  我的手机机型是 小米6,微信版本6.7.2

    2018-09-06
    赞同 1
    回复 2
    • 娇华
      娇华
      2018-09-11

      canvas不支持base64格式的

      2018-09-11
      回复
    • 雨中的鱼
      雨中的鱼
      2018-09-11回复娇华

      可是调试工具又支持显示

      2018-09-11
      回复
  • 啦啦啦
    啦啦啦
    01-04

    我也是这样,选择导出的格式是png的,就导出透明的图片,选择jpg的,就导出黑色的图片

    01-04
    赞同
    回复
  • It&akj
    It&akj
    2018-09-09

    我的也是这样,我的也是小米手机。

    2018-09-09
    赞同
    回复