ZhangLeo
ZhangLeo
  • 发布:2025-10-17 11:19
  • 更新:2025-10-17 13:53
  • 阅读:25

uniappx 通过canvas获取图片像素点信息时候,安卓设备无法获得对应的像素点信息

分类:uni-app x

代码如下:

const img = this.canvasContext!.createImage();  
          img.src = "/static/newLogo.png";  
          img.onload = () => {  
            ctx.drawImage(img, 0, 0);  

            try {  
              // 获取像素数据,返回的是ImageData对象  
              // data属性是一个Uint8ClampedArray数组,包含RGBA值  
              const imageData = ctx.getImageData(0, 0, img.width, img.height);  

              console.log(imageData)  
              this.testCreateImage = true;  
            } catch (e) {  
              console.error(e);  
            }  
          }

控制台输出的是

//‍[⁠io.dcloud.canvas.ImageDataImpl⁠]‍  
{  
    "data":  
    //‍[⁠io.dcloud.uts.Uint8ClampedArray⁠]‍  
    {},  
    "height":  
        //‍[number]‍  
        487,  
    "width":  
        //‍[number]‍  
        538  
}  

有没有大佬知道还有什么为什么读取不到图片像素点,图片是本地静态图片,并且图片的尺寸是可以正常获取到的。  
2025-10-17 11:19 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com

等待一会儿,大概是drawImage还没完成

  • ZhangLeo (作者)

    应该不是,因为图片已经显示出来了,哪怕在等待几分钟还是获取不到图像像素点信息

    2025-10-17 15:26

要回复问题请先登录注册