获取 canvas 指定区域的图像数据。
object object
属性 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
x | number | - | 是 | 图像区域的左上角横坐标 |
y | number | - | 是 | 图像区域的左上角纵坐标 |
width | number | - | 是 | 图像区域的宽度 |
height | number | - | 是 | 图像区域的高度 |
success | function | - | 否 | 调用成功的回调函数 |
fail | function | - | 否 | 调用失败的回调函数 |
complete | function | - | 否 | 调用结束的回调函数(调用成功、失败都会执行) |
success 回调函数
参数
object res
属性 | 类型 | 描述 |
---|---|---|
width | number | 所获取图像的宽度 |
height | number | 所获取图像的高度 |
length | number | 图像像素点数据,一维数组,每四项表示一个像素点的 rgba |
data | uint8clampedarray | data 的长度 |
.js
.axml
const ctx = my.createcanvascontext('canvas')
ctx.getimagedata({
x: 0,
y: 0,
width: 100,
height: 100,
success(res) {
console.log(res.width) // 100
console.log(res.height) // 100
console.log(res.data instanceof uint8clampedarray) // true
console.log(res.data.length) // 100 * 100 * 4
},
fail(res) {
console.log('fail', res)
},
complete(res) {
console.log('complete', res)
}
})
<canvas id="canvas"></canvas>