我有一个RGB颜色列表,需要在它们之间用python绘制渐变。你有什么建议,如何使它在皮尔图书馆?
编辑: 我明白了:
def gradient(list_of_colors):
width = 600
height = 480
img = Image.new("RGB", (width, height))
draw = ImageDraw.Draw(img)
for i in range(len(list_of_colors)):
r1,g1,b1 = list_of_colors[i]
for x in range(width/len(list_of_colors)):
colour = (r1,g1,b1)
draw.line((x+(width/len(list_of_colors)*i), 0, x+(width/len(list_of_colors)*i), height), fill=colour)
img.show()
gradient([(30, 198, 244), (99, 200, 72),(120, 50, 80),(200, 90, 140)])
它让我想到: http://img59.imageshack.us/img59/1852/3gba.png
我只需要在这些颜色之间渐变,而不是条纹。 (类似这样的东西)http://www.kees-tm.nl/uploads/colorgradient.jpg
我认为这样的代码可以工作,它使用Linear Interpolation来创建渐变。
很明显,我不知道你是如何绘制渐变的,所以我让它对你开放,对颜色变量做你喜欢的事情,在for循环中绘制渐变的每一步。:)
另外:我不了解列表生成,所以如果有人可以改进LerpColour函数来使用它,请编辑我的文章:)
编辑- 生成一个列表,在使用PIL绘制时可以轻松地进行迭代:
相关问题 更多 >
编程相关推荐