2010-04-03 80 views
5

我当前正在开发一个项目,其中随着不同的用户向文档添加文本,我希望文本的颜色发生变化。以编程方式在C中更改颜色#

最初,我使用C#的预定义颜色值,并将我想要使用的颜色值放入应用程序的枚举中,并在不同用户添加注释时循环使用颜色。这工作正常,我对这个解决方案没问题。

但是,我也可以选择以这种方式更改RGB值和派生颜色。我很好奇什么类型的算法会改变这些值以获得不同的颜色集合。这更多的是对我曾经考虑过的事情的锻炼。为了澄清一点,我不想仅仅增加其中一个颜色值(R,G或B),因为这样不会给我足够多的颜色。但是,我认为它也不会增加所有三个相等的数额。我也必须警惕重复颜色(达到一定程度)。我的项目的要求至多预计有10位不同的审阅者。

回答

4

对于这类问题,最好的办法是使用HSL或HSV值,并改变色调。 然后转换回RGB。

See this link for more information

+0

谢谢Brian。哇,这比我想象的要简单得多。非常整洁的解决方案。 – JasCav 2010-04-03 19:06:54

+0

@Jason:Ya它绝对看起来更复杂,因为当你使用与你想要做的不匹配的颜色模型时,它*更难。 – 2010-04-03 19:16:53

相关问题