1

可以像标准位图一样操作 JavaScript 画布(访问/修改像素并获取其大小)吗?这种使用是否经过优化,或者在需要时操作普通的二维像素数组并在画布上绘制会更快吗?

4

2 回答 2

3

绝对没错!请看这里: https ://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Canvas_tutorial/Pixel_manipulation_with_canvas

至于您的第二个问题,根据像素文档,像素是一维数组。您需要以 2d 方式制作自己的 2 x 2 hoopla。

取自I82Much之前的 SO 回答(对我来说很有效):

int row = i;
int col = j;
int offset = row * width + col;
color p = pixels[offset];

更多信息:如何使用 2D 数组遍历像素?
在这里: http: //www.processing.org/reference/pixels.html

于 2012-07-14T20:00:20.847 回答
1

您可以使用getImageData()从画布上下文中获取像素数据数组。请记住,每个像素占用阵列中的 4 个空间(用于红色、绿色、蓝色和 alpha)。然后,一旦根据自己的喜好更改了数组,就可以使用putImageData()将数据放回原处。

于 2012-07-14T20:03:11.097 回答