Colors 基于两种颜色之间的相对差异重新计算渐变颜色的公式
当给定任意颜色值时,如何使用该值和渐变偏移0(以下)之间的相对差来调整其余偏移的颜色,以便它们与新颜色具有与原始颜色相同的相对关系Colors 基于两种颜色之间的相对差异重新计算渐变颜色的公式,colors,gradient,color-theory,Colors,Gradient,Color Theory,当给定任意颜色值时,如何使用该值和渐变偏移0(以下)之间的相对差来调整其余偏移的颜色,以便它们与新颜色具有与原始颜色相同的相对关系 <LinearGradientBrush StartPoint="0,0" EndPoint="1,1"> <LinearGradientBrush.GradientStops> <GradientStop Color="#FFDB0000" Offset="0" /> <GradientStop Color
<LinearGradientBrush StartPoint="0,0" EndPoint="1,1">
<LinearGradientBrush.GradientStops>
<GradientStop Color="#FFDB0000" Offset="0" />
<GradientStop Color="#FFB74134" Offset="0.6" />
<GradientStop Color="#FFBA5643" Offset="0.85" />
<GradientStop Color="#93C11E00" Offset="1" />
</LinearGradientBrush.GradientStops>
</LinearGradientBrush>
我的挑战是找出用于进行相对调整的数学公式。一旦我有了这个逻辑,在我使用的特定技术(C#/.Net/WPF)中实现它应该相对容易
谢谢大家! 解决方案:
使用色调饱和度亮度(HSL)模型,我确定:
- 模板渐变的基础颜色和每个模板停止颜色之间的相对色调差异
- 每个模板停止颜色的绝对饱和度和亮度值
- 模板渐变的基础颜色和每个模板停止颜色之间的相对色调差异
- 每个模板停止颜色的绝对饱和度和亮度值