第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PutImageData出現(xiàn)黑屏

PutImageData出現(xiàn)黑屏

ibeautiful 2021-03-29 17:14:01
我有一個從webgl程序傳遞來的像素數(shù)據(jù)數(shù)組。然后,我將像素數(shù)據(jù)進(jìn)行綠色篩選,然后將結(jié)果輸出到2d畫布中??紤]到我是Canvas 2d的新手,我的問題是,如何正確地將圖像數(shù)據(jù)傳遞到畫布。var canvas = document.createElement("canvas");var ctx = canvas.getContext("2d");document.body.appendChild(canvas);canvas.width = window.innerWidth;canvas.height = window.innerHeight;var SetCanvas = function(data){    var id = ctx.createImageData(window.innerWidth, window.innerHeight);    id.data = data;    ctx.putImageData(data, 0, 0);};
查看完整描述

1 回答

?
HUWWW

TA貢獻(xiàn)1874條經(jīng)驗 獲得超12個贊

data 不能像這樣設(shè)置ImageData對象的屬性。


您需要將此Uint8ClampedArray的每個值設(shè)置為傳入的值data。


如果data是ArrayLike對象并保存Uint8Clamped值,則可以使用set()TypedArrays方法。


var SetCanvas = function(data){

  var id = ctx.createImageData(window.innerWidth, window.innerHeight);

  id.data.set( data );

  ctx.putImageData(id, 0, 0);

};

但是當(dāng)然,這是假定data保存正確的數(shù)據(jù)(即每個像素4個rgba Uint8值,并且長度為innerWidth x innerHeight x 4)。


另外,您還放置了輸入data而不是ImageData id。


查看完整回答
反對 回復(fù) 2021-04-08
  • 1 回答
  • 0 關(guān)注
  • 287 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號