Мой вопрос здесь похож на the question here, за исключением того, что я работаю с C#.Создать градиент цвета в C#
У меня есть два цвета, и у меня есть предопределенные шаги. Как получить список Color
s, которые являются градиентами между ними?
Это подход, который я попробовал, который не работал:
int argbMax = Color.Chocolate.ToArgb();
int argbMin = Color.Blue.ToArgb();
var colorList = new List<Color>();
for(int i=0; i<size; i++)
{
var colorAverage= argbMin + (int)((argbMax - argbMin) *i/size);
colorList.Add(Color.FromArgb(colorAverage));
}
Если вы попытаетесь код выше, вы увидите, что постепенное увеличение argb
не соответствует визуальному постепенному увеличению в цвете.
Любая идея по этому вопросу?
Это было очень близко, но я имел некоторые отрицательные значения шага, которые ломали его. Я также опубликовал измененное решение. – jocull