小程序將像素數據繪制到畫布wx.canvasPutImageData
wx.canvasPutImageData(Object object, Object this)
將像素數據繪制到畫布。在自定義組件下,第二個參數傳入自定義組件實例 this,以操作組件內 <canvas> 組件
基礎庫 1.9.0 開始支持,低版本需做兼容處理。
以 Promise 風格 調用:支持
小程序插件:支持,需要小程序基礎庫版本不低于 1.9.6
參數
Object object
屬性 類型 默認值 必填 說明
canvasId string 是 畫布標識,傳入 canvas 組件的 canvas-id 屬性。
data Uint8ClampedArray 是 圖像像素點數據,一維數組,每四項表示一個像素點的 rgba
x number 是 源圖像數據在目標畫布中的位置偏移量(x 軸方向的偏移量)
y number 是 源圖像數據在目標畫布中的位置偏移量(y 軸方向的偏移量)
width number 是 源圖像數據矩形區域的寬度
height number 是 源圖像數據矩形區域的高度
success function 否 接口調用成功的回調函數
fail function 否 接口調用失敗的回調函數
complete function 否 接口調用結束的回調函數(調用成功、失敗都會執行)
Object this
在自定義組件下,當前組件實例的this,以操作組件內 canvas 組件
示例代碼
const data = new Uint8ClampedArray([255, 0, 0, 1])
wx.canvasPutImageData({
canvasId: 'myCanvas',
x: 0,
y: 0,
width: 1,
height: 1,
data: data,
success (res) {}
})