function colourGradientor(p, rgb_beginning, rgb_end){
var w = p * 2 - 1;
var w1 = (w + 1) / 2.0;
var w2 = 1 - w1;
var rgb = [parseInt(rgb_beginning[0] * w1 + rgb_end[0] * w2),
parseInt(rgb_beginning[1] * w1 + rgb_end[1] * w2),
parseInt(rgb_beginning[2] * w1 + rgb_end[2] * w2)];
return rgb;
};
其中 p 是一个介于0和1之间的值,指定颜色应该通过渐变的距离,rgb _ start 是 from color,rgb _ end 是 to color。它们都是[ r,g,b ]数组,因此首先必须从十六进制进行转换。这是 LESS 混合函数的简化版本,我认为它来自 SASS。因为海报上的 p 是0.5