【问题标题】:HEX RGB color manipulation methods?HEX RGB 颜色操作方法?
【发布时间】:2012-05-03 05:07:15
【问题描述】:

这是我的情况:

我有一个包含大约 100 个颜色变量的文件(以十六进制值设置,例如 #FFFFFF) - 让我们考虑一个主题

现在我想做的是:

  • 将同一组属性应用于所有变量并相应地更改它们
  • 例如反转所有颜色(将#FFFFFF 转换为#000000,依此类推...)

我想知道的是:

  • 是否已有用于 HEX RGB 操作的此类方法/公式?
  • 您能否指出(尽可能)完整操作列表? (变暗、变亮、相乘、反转等等——越多越好)

【问题讨论】:

    标签: language-agnostic colors hex rgb


    【解决方案1】:

    我们先做第2题:

    颜色操作列表

    我认为您最好的选择是在网络上搜索“颜色操作库”,而不在乎出现什么操作系统/平台/应用程序/工具 - 只需查看文档以了解其 API 公开的内容。这是我发现的:

    • Color manipulation in Sass

      • 调整色调
      • 饱和
      • 去饱和
      • 减轻
      • 变暗
      • 灰度
      • 补充
      • 混合(有趣!就像混合油漆颜色)
      • 不透明
      • 淡入
      • 淡出
      • 透明化
    • Ruby color tools

      (上面的一些,加上...)

      • adjust_brightness
      • adjust_hue
      • adjust_saturation
      • darken_by
      • lighten_by
    • Color, Javascript color library

      (再次,忽略上面的内容......)

      • 更清晰
      • 不透明
      • 旋转(我想,就是在色彩空间中旋转)
    • Grapefruit, Python color library

      令人讨厌的是,他们的文档可以是 downloaded,但不是在线托管的。

      • ColorWithAlpha
      • ColorWithWhiteRef
      • ColorWithHue
      • 色彩饱和度
      • 颜色与亮度
      • WebSafeDither

    所以这是一个很好的操作开始。 找不到适用于 Objective-C 的,抱歉。

    这些操作的公式

    坏消息:找不到一个只有很好的公式备忘单的地方。

    好消息:上面几乎所有这些库都是开源的。我相信你可以四处看看,了解ColorWithWhiteRef 的实际工作原理。

    祝你好运!

    【讨论】:

    • 哇!这看起来像是一个充满资源的好答案;几乎是我想要的。给我一些时间仔细阅读它们,我会回复你的!非常感谢,伙计! :-)
    • 对于 Cocoa,请查看 NSColor 文档。您可以轻松地从十六进制字符串转换为 NSColor,反之亦然,只需在此处搜索相关问题即可。
    【解决方案2】:

    如果您正在寻找一个 javascript 库,xolor library 有很多颜色转换和组合:

    两种颜色的组合:

    • 混合 - 将一种颜色叠加在另一种颜色上,其中第一种颜色具有不透明度
    • combine - 用 XOR 组合两种颜色
    • 添加 - 两种颜色的添加剂混合
    • 减法 - 两种颜色的减法混合
    • subtract - 两种颜色的减法(与减法不同,非标准颜色函数)
    • multiply - 两种颜色的乘法混合
    • 平均 - 两种颜色的平均值
    • gradient - 沿两种颜色之间的渐变返回一种颜色

    相关颜色:

    • lightness - 返回或更改亮度级别
    • saturation - 返回或更改饱和度
    • hue - 返回或更改色调
    • luminosity - 返回 WCAG 亮度
    • 棕褐色滤镜
    • 逆向
    • greyFilter - 将颜色更改为灰度版本

    相关颜色列表:

    • 三合会
    • 四分体
    • 拆分补码
    • 单色
    • 类似的
    • schemeByDegrees - 通过传入任意数量的色调角增量数组来创建一组任意数量的颜色

    杂项

    • 距离 - 得到一个
    • 对比度 - 获取两种颜色之间的 WCAG 对比度级别

    【讨论】:

      猜你喜欢
      • 2019-02-08
      • 2017-08-04
      • 2018-06-16
      • 1970-01-01
      • 1970-01-01
      • 2011-02-04
      • 2012-02-06
      • 2011-05-26
      • 2012-03-02
      相关资源
      最近更新 更多