当前位置:  开发笔记 > 编程语言 > 正文

计算颜色渐变

如何解决《计算颜色渐变》经验,为你挑选了2个好方法。

给定两种颜色和n步,如何计算n种颜色,包括产生淡化效果的两种给定颜色?

如果可能的话,伪代码是首选,但这可能是用Java实现的.

谢谢!



1> nickf..:

将每种颜色分成RGB组件,然后计算所需的各个步骤.

oldRed = 120;
newRed = 200;
steps = 10;
redStepAmount = (newRed - oldRed) / steps;

currentRed = oldRed;
for (i = 0; i < steps; i++) {
   currentRed += redStepAmount;
}

显然将其扩展为绿色和蓝色.


所示的代码永远不会达到newRed,因为整数截断和一个一个错误.最好重组为currentRed = oldRed +((i*(newRed - oldRed))/(步骤-1).

2> Adam Davis..:

您还应该检查两个相关的问题:

以编程方式生成渐变?

条件格式 - 百分比到颜色转换

请注意,在HSV色彩空间而不是RGB中,您通常会做得更好 - 它会为人眼产生更令人愉悦的色彩(更低的碰撞机会或负光学特性).

祝好运!

-亚当

推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有