0
我試圖複製這種效果,但我覺得教程提供了極爲難走:http://tympanus.net/Tutorials/InteractiveTypographyEffects/index3.html獲取填充像素位置的x和y的值在畫布
基本上,我想,以填補文本到畫布非常快速(如單幀),獲取圖像數據(逐個掃描整個頁面的像素),如果一個像素被填充,則將粒子推入x和y位置。
我知道getImageData如何運作以及如何掃描像素一個接一個,比如這個:
var numPixels = imageData.width*imageData.height;
for (var i = 0; i < numPixels; i++) {
pixels[i*4] = 255; // Red
pixels[i*4+1] = 0; // Green
pixels[i*4+2] = 0; // Blue
pixels[i*4+3] = 255; // Alpha
};
不過,我希望能夠找回自己的x和y位置。我想是這樣的:
for (var x = 0; x < imageData.width; x++) {
for (var y = 0; y < imageData.height; y++){
var i = x * 4 + y * 4 * imageData.width;
if (i === 255) {
particles.push(new Particle(x, y); //Push a particle if the pixel is filled with any color
}
}
}
但不幸的是預期它不工作。我一直停留在這個相當長的一段時間,因此,所有的想法和建議更然後歡迎
感謝,人,非常感謝! – 2014-11-06 17:34:51
只是一個問題。我想設置一個功能,並在每2秒顯示一個英文字母的不同字母。我想我必須將像素操作放在函數中,並將其設置爲使用setInterval顯示不同的字母?你將如何繼續? – 2014-11-06 17:55:13
沒問題!只需使用一個字符串,每次獲取一個字符並轉到下一個索引並進行渲染。我會建議你打開一個新的問題,你可以得到更詳細的答案。 – K3N 2014-11-07 01:25:36