gpt4 book ai didi

c# - 为 HSB 拾色器创建 "Dynamic"渐变

转载 作者:太空宇宙 更新时间:2023-11-03 11:43:11 25 4
gpt4 key购买 nike

我想在 WPF/C# 中创建一个类似于我在 Photoshop 中看到的颜色选择器。

alt text

当我移动 Hue Slider 时,渐变应该更新。我第一个想知道如何创建渐变,各个颜色停止应该出现在哪里以及它们应该包含什么颜色值。

上面的渐变可能更难实现

  • 白-红
  • 白-黑
  • 黑-红

我可以轻松地创建单独的渐变,但如何创建这样的“复合”渐变?

一个更简单的替代方案是有 3 个 slider ,每个 slider 用于 HSB 值。

alt text

当我移动一个 slider 时,另外两个 slider 上的颜色应该更新。任何让我开始的链接或提示?当我移动一个 slider 时,我需要找到一种方法来计算其他 2 个 slider 的颜色。例如。当我将色相 slider 从红色移动到蓝色时,饱和度和亮度应该从不饱和到饱和红色再到蓝色,从深到浅红色再到蓝色。

最佳答案

关于渐变,我觉得还是自己画吧。看看WriteableBitmap .

三个 slider 可以这样实现:

  • 实现一个抽象 IMultivalueConverter,将两个颜色分量值转换为渐变画笔。转换器仅采用两个颜色分量值,创建第三个未知分量值的梯度并将其返回。
  • 导出三个具体转换器:HSToBGradientConverterSBToHGradientConverterBHToSGradientConverter
  • 在相应的颜色组件和转换器上使用多重绑定(bind)来绑定(bind) slider 轨道的背景。

关于c# - 为 HSB 拾色器创建 "Dynamic"渐变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4103356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com