基本色を取り、同じ色の異なる色合いに対応する値の配列を返す関数を呼び出せるようにしたいと考えています。配列には、16進値またはrgba()値を含めることができます。私は希望の色合いの量を入力することもできるようにしたいと思います。シェードの量は、シェードを増やすためのメトリックとして使用することもできます。たとえば、出力に3種類の色合いが必要だった場合、1番目の色合いは基本色の1/3になりますが、数学的には機能します...さらに、1番目の色合いは100%透明でなければならない場合があります最初のアルファの引数を受け取りたい。私は機能の基本的な論理だと思うものを編成しましたが、数学は私には不明です。Javascript - 同じ色の異なる影を生成する
var buildColorStops = function (baseColor,numberOfValues,initialAlpha) {
var b = baseColor;
var n = numberOfValues //expected number of colors in the output. If n was 3 results would be [light blue, blue(base), dark blue] (# or rgba will work)
var d = 1/n; // if number of values was 5 d would represent 1/5 of the base.
var ia = initialAlpha; // some situations may require the first color to be 100% transparent
var outputArray = [];
var i = 0;
while (i < n) {
if (i == 0) {
//...math on base color & incorporate initial alpha
outputArray.push("result of math on base")
}
else {
//...math on base color by incrementing d or 1/n
outputArray.push("result of math on base")
}
}
return outputArray;
}// end of buildColorStops
検索しましたか? http://stackoverflow.com/questions/5560248/programmatically-lighten-or-darken-a-hex-color-or-rgb-and-blend-colors – epascarello
いくつかの例を追加できますか? –
また、番号を操作してCSSの文字列を生成するだけで、hslを変更することもできます –