我为每种颜色分配一个数值。例如:如何找到两种其他颜色之间的颜色?
Color.red: 12
Color.Blue: 6
我需要找到两种颜色之间的颜色(例如,红色和蓝色)。但是如何?我已试过,
(Color.red+color.blue)/2=> (12 + 6)/2 = 9
9对应于Color.yellow
我为每种颜色分配一个数值。例如:如何找到两种其他颜色之间的颜色?
Color.red: 12
Color.Blue: 6
我需要找到两种颜色之间的颜色(例如,红色和蓝色)。但是如何?我已试过,
(Color.red+color.blue)/2=> (12 + 6)/2 = 9
9对应于Color.yellow
颜色通常表示为用于与计算机红一个六位十六进制值,绿蓝&服用每两个数字的顺序例如FF0000为红色,00FF00为蓝色,0000FF为绿色。你应该考虑如何在这些价值之间转移。
Michael Leigeber有一个不错的color transition algorithm in JavaScript,你可以下载,看看他如何实现两个值之间的移动。
您需要使用颜色的RGB值并在它们之间进行插值。使用单一值不会给你所需的歧视。
是YX报价Drawing a line with a gradient color答案看起来像一个良好的开端
这个问题需要你分裂alpha,红色,绿色,每种颜色的蓝色其它的组件,找到每个的平均值,并创建一个新颜色:
Color first = Color.Red;
Color second = Color.Blue;
byte r = (byte)((first.R + second.R)/(byte)2);
byte g = (byte)((first.G + second.G)/(byte)2);
byte b = (byte)((first.B + second.B)/(byte)2);
byte a = (byte)((first.A + second.A)/(byte)2);
Color mix = Color.FromArgb(a, r, g, b);
什么是色差,以及像素与颜色有什么关系? – RedFilter 2009-06-11 12:14:20