以下方法应该适合您:
Color GetColor(Int32 rangeStart /*Complete Red*/, Int32 rangeEnd /*Complete Green*/, Int32 actualValue)
{
if (rangeStart >= rangeEnd) return Colors.Black;
Int32 max = rangeEnd - rangeStart; // make the scale start from 0
Int32 value = actualValue - rangeStart; // adjust the value accordingly
Int32 green = (255 * value) / max; // calculate green (the closer the value is to max, the greener it gets)
Int32 red = 255 - green; // set red as inverse of green
return Color.FromRgb((Byte)red, (Byte)green, (Byte)0);
}
Run Code Online (Sandbox Code Playgroud)
你是这个意思吗?
颜色 GetColor(int 比例)
{
// 范围在 1 到 255 之间
返回 Color.FromArgb(255, 比例, 255 - 比例, 0);
}
| 归档时间: |
|
| 查看次数: |
4986 次 |
| 最近记录: |