收藏
回答

wx.getImageInfo部分机型(不限于安卓或ios)获取相对路径图片失败

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.getImageInfo 客户端 6.7.2 2.3.0 [170]

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

获取不到图片




- 预期表现

    获取到相对路径的图片


- 提供一个最简复现 Demo


js:

onLoad: function (options) {

var myCanvasWidth = 0;

var myCanvasHeight = 0;

wx.getSystemInfo({

success: function (res) {

myCanvasWidth = res.windowWidth

myCanvasHeight = res.windowHeight

},

})

this.setData({

canvasWidth: myCanvasWidth,

canvasHeight: myCanvasHeight

})

const ctx = wx.createCanvasContext('shareCanvas')

wx.getImageInfo({

src: 'blue.png',

success:function(res){

// ctx.drawImage("../../"+res.path, 0, 0, myCanvasWidth, myCanvasHeight);

// ctx.stroke();

// ctx.draw();

console.log(res);

},fail:function(res){

console.log(res);

}

})

}

wxml:

<canvas class='canvasInfo' canvas-id="shareCanvas" style='width:{{canvasWidth}}px; height:{{canvasHeight}}px;' bindlongtap="createNewImg">

</canvas>


个人测试结果:

iPhone8p、荣耀9、三星s9+ 测试均可获取到该图片资源

小米5、iPhone5(也可能是iPhone SE)获取不到

回答关注问题邀请回答
收藏

1 个回答

  • 卢霄霄
    卢霄霄
    2018-09-28

    你写成 ./blue.png 试试呢?你不能直接 drawImage('blue.png') 吗。。一定要换成临时路径?

    2018-09-28
    有用 2
    回复 9
    • simple
      simple
      2018-09-28

      你好,感谢你的回答,一直被这个api获取不到路径困扰着,居然没想到直接写路径,直接drawImage确实是可以的,多谢了

      2018-09-28
      回复
    • 卢霄霄
      卢霄霄
      2018-09-28回复simple

      哦,好的。。

      2018-09-28
      回复
    • 永杰
      永杰
      2022-11-24
      这个bug我玩了一上午,网络图片用getImageInfo,本地图片直接drawImage
      2022-11-24
      回复
    • 哈哈哈哈哈
      哈哈哈哈哈
      2023-08-09
      不行啊,大佬,救命,我用的是offScreenCanvas的canvas实例,然后如果我直接ctx.drawImage(相对路径url,x,y,w,h);是不行的,怎么办,救命。
      2023-08-09
      回复
    • 哈哈哈哈哈
      哈哈哈哈哈
      2023-08-09
      根本不好用啊,您用的是哪个drawImage,我这个ctx是canvas.getContext('2d');的返回值,是一个上下文对象。
      2023-08-09
      回复
    查看更多(4)
登录 后发表内容