def changeRed():
setMediaPath("/Users/addison/Downloads/Cmpt101_Pics/Learjet31A.jpg")
filename1 = "/Users/addison/Downloads/Cmpt101_Pics/Learjet31A.jpg"
source = makePicture(filename1)
halfHeight = getHeight(source)/2
for x in range(0,getWidth(source)):
for y in range(0, halfHeight):
pixel = getPixel(source, x, y)
value = getRed(pixel)
setRed(pixel, value-127.5)
show(source)
所以这是我现在的代码,选择图片的上半部分并将发红减少 50%。我的程序还需要选择图片的下半部分并将发红增加 50%,我该怎么做?
几乎在 x in range 循环中添加另一个 for 循环,但不在你已经拥有的 for y 循环中。这个新的 y 在范围循环中应该有一个 halfHeight,getHeight(source) 的范围。同样,从红色像素中减去 -127.5 不会将红色减少 50%。请改用值/2。