C#如何根据基色生成颜色渐变的起始颜色和终止颜色

C# 实现,给定一种颜色(即背景色基色/渐变色中间的颜色),如何根据一个渐变指数生成渐变色的起始颜色和终止颜色,单色渐变的

已找到解决方案,https://download.csdn.net/download/Aganstrong/18913340

这是我封装好的一个HSL转RGB的一个类

//来源:https://bbs.csdn.net/topics/392393089

static public void  DrawBack(Graphics g,System.Drawing.Rectangle rect ,Color startColor,Color endColor)
{
LinearGradientBrush brush = new LinearGradientBrush(rect, 
startColor,
endColor,
90.0f); 

float[] relativeIntensities = {0.0f, 0.3f, 1.0f};
float[] relativePositions   = {0.0f, 0.7f, 1.0f};

Blend blend = new Blend();
blend.Factors = relativeIntensities;
blend.Positions = relativePositions;
brush.Blend = blend;

g.FillRectangle(brush, rect);
}

更多参考

https://blog.csdn.net/wsadcg/article/details/102860725

https://blog.csdn.net/a873744779/article/details/100973110

我是需要这种,调整Lum的值获得新的RGB,保持在一种基色中由白到黑的

这应该算是一个HSL转RGB的一个算法问题