使用Javascript循环更改像素颜色

时间:2018-07-21 12:47:13

标签: javascript loops colors pixel

我正在从头学习编程。希望将职业从教学转向编程。

我今天的主题是For Loop: 如何使用Javascript For Loop将200x200黑色图片更改为黄色?

我知道黑色是(0,0,0)而黄色是(255,255,0)

var img = new SimpleImage(200,200);
print(img);

for (var pixel of img.values()){
pixel.setRed(r);
pixel.setGreen(g);
pixel.setBlue(b);
}

我真的很困惑。感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

正如@Kavian所说,您需要用所需的值替换变量(r,g,b)。 (或者预先定义变量)。这应该可以解决问题:

var img = new SimpleImage(200,200);
print(img);

for (var pixel of img.values()){
    pixel.setRed(255);
    pixel.setGreen(255);
    pixel.setBlue(0); 
}

代码要做的是迭代遍历图像的每个像素,并将每个像素简单地设置为(255,255,0)黄色。

如果您确定所有像素一开始都是黑色的,则可以省略循环pixel.setBlue(0);中的最后一行。上面的代码在这方面是安全的,因为它可以确保像素为黄色,而不管先前的颜色值是什么。

答案 1 :(得分:1)

您必须在更改像素颜色后打印图像。

var img = new SimpleImage(200,200);

for (var pixel of img.values()){
    pixel.setRed(255);
    pixel.setGreen(255);
    pixel.setBlue(0); 
}
print(img);