我有一个 WTL C++ 应用程序,我希望用户能够为某些 UI 元素选择不同的颜色,并使用GradientFill
API 调用应用渐变填充。但是,我不希望用户选择渐变的开始和结束颜色,而是希望他们能够选择“基本”颜色,并让我的应用程序自动计算合适的开始/结束颜色。我想最终得到一个类似于 Windows 用于各种主题元素的填充。基色可能是渐变的“中间”颜色,我的应用程序以某种方式计算渐变开始的颜色略浅,渐变结束的颜色略深。或者,我可以使用基础颜色作为开始颜色并计算结束颜色,反之亦然。
我确信使用一些 RGB 宏魔法会相对容易,但我真的不知道从哪里开始。任何想法都会受到欢迎。