Fudges
Fudges
  • 发布:2022-11-02 11:41
  • 更新:2022-11-02 14:20
  • 阅读:260

uni.canvasPutImageData 渲染不出来图像

分类:uni-app

使用uni.canvasGetImageData获取像素数据后 使用uni.canvasPutImageData不生效
从控制台看到已经获取到像素对象,也有内容. uni.canvasPutImageData走的是success方法,但是图像渲染不出来

const data = ref("");  

    const start = () => {  
        uni.chooseImage({  
            success: function(res) {  
                ctx.drawImage(res.tempFilePaths[0], 0, 0, 100, 100)  
                ctx.draw()  

                uni.canvasGetImageData({  
                    canvasId: "test",  
                    x: 0,  
                    y: 0,  
                    width: 100,  
                    height: 100,  
                    success(r) {  
                        data.value = r.data  
                    }  
                })  
            }  
        })  
    }  

    const go = () => {  
        console.log(data.value);  
        uni.canvasPutImageData({  
            canvasId: "test",  
            x: 100,  
            y: 0,  
            width: 100,  
            height:100 ,  
            data: data.value,  
            success() {  
                console.log("success:");  
                // console.log("data:" + res.data);  
            }  
        })  
    }
2022-11-02 11:41 负责人:无 分享
已邀请:
Fudges

Fudges (作者)

运行官方的示例也渲染不出来!

Fudges

Fudges (作者)

已解决 . 其实不是绘制不出来,是读取时候没有读到正确的像素. 获取的时候需要在ctx.draw()的第二个回调中进行获取像素.
官方示例看不出来是因为只有一个像素点,太小了,多复制几份数据就能看出来.

要回复问题请先登录注册