问题标签 [hsl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
22396 浏览

javascript - 将 HSB/HSV 颜色转换为 HSL

如何将 HSB 颜色转换为 HSL?

Photoshop 在其颜色选择器中显示 HSB 颜色。HSL 颜色可以在 CSS 中使用。

我试过这个JS:

hsb2hsl(0, 100, 50).l == 0不是25

更新:我可以在不转换 HSB → RGB → HSL 的情况下做到这一点吗?

0 投票
4 回答
4982 浏览

android - RGB 值到 HSL 转换器

Google maps api v3 允许将“样式”应用于地图,包括设置各种特征的颜色。但是,它使用的颜色格式是 HSL(或看起来像的):

  • 色调(RGB 十六进制字符串)
  • 亮度(-100 到 100 之间的浮点值)
  • 饱和度(-100 到 100 之间的浮点值)

(来自文档

我设法在线找到 RGB 到 HSL 转换器,但我不确定如何以谷歌地图接受的方式指定转换后的值。例如,转换器给出的典型 HSL 值将是:209° 72% 49%

该 HSL 值如何映射到我从 google maps api 指定的参数?即色调度值如何映射到RGB 十六进制字符串以及百分比如何映射到-100 到100 之间的浮点值?

我仍然不确定如何进行转换。我需要,给定一个 RGB 值,快速将其转换为谷歌地图期望的颜色,以便颜色相同......

0 投票
9 回答
36208 浏览

colors - 颜色理论:如何将 Munsell HVC 转换为 RGB/HSB/HSL

我正在查看描述牙科中用于描述牙齿颜色的标准颜色的文件。他们引用了huevaluechroma值,并指出它们来自 1905 Munsell 对颜色的描述:

AH Munsell 在 1905 年开发的颜色符号系统根据三个属性识别颜色:HUE、VALUE(亮度)和 CHROMA(饱和度)[ 15 ]

HUE (H):Munsell 将色调定义为我们区分一种颜色与另一种颜色的质量。他选择了五种原色:红、黄、绿、蓝、紫;五种中间色:黄-红、绿-黄、蓝-绿、紫-蓝、红-紫。这些被放置在相同点的色环周围,这些点之间的颜色是两者的混合,有利于较近的点/颜色(见图 1)。

替代文字

值 (V):此符号表示颜色相对于中性灰度的明暗程度,从绝对黑色(值符号 0)延伸到绝对白色(值符号 10)。这基本上就是颜色的“明亮”程度。

CHROMA (C):这表示给定色调与相同值的中性灰色的发散程度。色度等级从中性灰色的 0 扩展到 10、12、14 或更远,具体取决于待评估样品的强度(饱和度)。

有多种颜色分类系统,Vita 系统最常用于牙科。这使用字母 A、B、C 和 D 来表示牙齿的色调(颜色)。色度和值均由 1 到 4 的值表示。A1 比 A4 亮,但 A4 比 A1 更饱和。如果按照值的顺序,即亮度,从最亮到最暗的顺序是:

A1,B1,B2,A2,A3,D2,C1,B3,D3,D4,A3.5,B4,C2,A4,C3,C4

每种色调的 Hue、Value 和 Chroma 的确切值如下所示 ( 16 )

替代文字

所以我的问题是,任何人都可以将 Munsell HVC 转换为 RGB、HSB 或 HSL 吗?

他们说 Value(Brightness) 从 变化0..10,这很好。所以我取 7.05 表示 70.5%。

Hue衡量的是什么?我习惯于以(0..360)测量色调。degrees但是我看到的值都是红色的——当它们应该更黄或棕色的时候。

最后,它说 Choma/Saturation 的范围可以从0..10……甚至更高——这听起来像是一个任意的比例。

那么任何人都可以将 Munsell HVC 转换为 HSB 或 HSL,或者更好的是 RGB 吗?

0 投票
6 回答
13467 浏览

image-processing - Photoshop 中的色相/饱和度调整图层算法

有人知道调整图层在 Photoshop 中是如何工作的吗?我需要从色相/饱和度调整层生成具有源图像和 HSL 值的结果图像。转换为 RGB,然后与源颜色相乘不起作用。

或者是否可以使用适当设置混合模式(倍增、屏幕、色相、饱和度、颜色、亮度……)的普通图层替换色相/饱和度调整图层?如果是,那怎么办?

谢谢

0 投票
3 回答
1693 浏览

objective-c - RGB 到 HSL 的转换看起来不错,但视觉上不行

这里有一个菜鸟问题。

  1. 假设我的 RGB 值为:R:53,G:37 和 B:11
  2. 所以我设置了一个矩形的背景颜色:

    [UIColor colorWithRed:0.53 green:0.37 blue:0.11 alpha:1.00];

  3. 现在我进行 RGB 到 HSL 的转换,得到:H:0.10,is S:0.16 and L:0.13

  4. 所以我设置了相同矩形的背景颜色:

    [UIColor colorWithHue:0.10 saturation:0.16 brightness:0.13 alpha:1.00];

问题是 HSL 颜色看起来不像RGB 颜色。我将转换结果与在线转换器进行了比较,据我所知,它看起来还不错。

我很可能会错误地解释某些内容。

0 投票
3 回答
1547 浏览

javascript - 如何检查我的浏览器是否支持 Javascript 中的 HSL 颜色?

我希望能够确定浏览器是否支持 HSL 颜色,如果不支持,那么我想依靠生成的 RGB 颜色(我都生成了)。有没有办法在不实际检查用户使用的浏览器的情况下做到这一点?

0 投票
1 回答
607 浏览

python - 测试 HSL 颜色,最好避免与绿色相邻的红色(常见色盲类型)

受此页面上的最佳答案的启发,我编写了一个 python 程序来生成 N 种不同的 HEX 颜色。不同之处在于,原作者将使用 math.random() 生成饱和度和亮度,而我使用三角函数,我可以保证它始终会给出独特的色调、饱和度和亮度,同时还提供了我可以编程的优势黄色看起来比蓝色更暗,可以与白色背景和黑色文本形成更好的对比(我需要它)。
我实际使用的代码还通过 RGB 将 HSL 转换为 HEX 代码,这样我就可以创建 Web 颜色代码。
我的问题是:-

  1. 使用这个模型,我怎么能保证红色不会出现在绿色旁边?
  2. 生成颜色代码很容易,但我怎样才能轻松看到它们呢?我目前必须将相当大的文件上传到生成 pdf / png / eps 的服务器,然后再再次下载。
  3. 我可以通过测试来做到这一点,但是有没有人有使用 HSL 模型生成颜色的经验,这些颜色与白色背景的对比度最大化,颜色顶部有黑色文本?蓝调可以使黑色文字真的很难看到,而黄色有时很难在白色背景下看到......

附言。这实际上不是我使用的代码,但这一切都从这里开始。完整的 python 脚本可在此处获得。
干杯,
亚历克斯

__iter__函数作为问题的答案写在这里

0 投票
2 回答
2902 浏览

c# - RGB转HSL,色调计算错误

我正在尝试将 RGB32 值转换为 HSL,因为我想使用 Hue 组件。

我使用了一些在网上找到的示例来创建此类:

但是它似乎无法正常工作,

例如,如果我使用输入颜色(R 0, G 255, B 193)Hue = 0 如果我选择与我得到的完全相同的 RGB 值,我会在 photoshop 中得到: Hue = 165 这是正确的值。

我希望 Hue 的值在 0 到 360 或 0 到 240 之间

问题是什么?..

参考: EasyRGB RGB->HSL

0 投票
3 回答
21542 浏览

c# - RGB 转 HSL 并返回,计算问题

我正在尝试将 RGB 转换为 HSL,并且我也想从 HSL 转换为 RGB,我已经为它编写了一个类,但是如果我执行 RGB->HSL->RGB 来尝试它是否有效,我会得到不同的值。

示例案例: 如果您通过执行创建一个 HSLColor 对象HSLColor MyTestConversion = HSLColor.FromRGB(Colors.Green); ,然后 Color ExpectedGreenHere = MyTestConversion.ToRGB()您得到的颜色Colors.Green是否与原始输入不同,所以出现问题..

这是我正在使用的代码:

使用参考: EasyRGB 颜色数学

0 投票
2 回答
8436 浏览

colors - 如何通过php简单轻松地更改单个rgb颜色的亮度?

一个关于 RGB 颜色的问题,并找到最简单、最小的 php 转换代码来操作给定 RGB 色调的明暗。

想象一个变量$colorA包含一个有效的六字符 RGB 颜色,就像F7A100我们想要让它变得更亮和/或更暗:

然后,在任何页面上使颜色变暗/变亮:

您解决这个问题的方法是什么?保持 RGB 原样还是先将其更改为 HSL?欢迎提示和建议。也欢迎您的示例/代码。

这确实侧重于 TINIES / SIMPLES / SHORTEST 可能的代码,以使相同的色调更暗/更亮。

我故意不建议我的代码,因为我想在这里保持开放的可能性。