应用 x% 不透明度后找出颜色结果的公式?

平面设计 颜色 透明度
2022-01-22 15:45:26

我有2种颜色

  1. #a1a2a4
  2. 黑色 ( #000000)
  3. 白色 ( #ffffff)

现在我需要知道我必须在第三种颜色(白色)的背景下对第二种颜色(黑色)应用多少不透明度(以百分比表示)才能获得与第一种颜色“最接近”(由眼睛确定)的颜色颜色 ( #a1a2a4)。

我该怎么做呢?

4个回答

这种情况或多或少很简单(您正在处理黑白)。

应用颜色 (#a1a2a4) 后,检查 RGB 级别:

RGB 级别

你可以看到它大约有 162(平均),并且知道它可以从 0 到 255,你只需要找出百分比:

162 * 100 / 255 = ~63.5%

现在,因为与 CMYK 相比,RGB 以相反的方式工作(就颜色混合而言,即全色混合意味着白色,而 CMYK 全色混合意味着黑色),这种情况下的实际百分比是 100% 和值之间的差异我们得到:

100 - 63,5 = 36,5%

所以如果你应用 36% 的不透明度,它就会有这种颜色,我刚刚测试过。

当然,在颜色更复杂的情况下,这种方法不起作用,而且我不知道有什么方法可以得到百分比,我会做经典的试错法。

如果我理解正确,问题是“您将如何以编程方式计算?” 将目标“颜色”转换为 alpha 值是简单的数学运算。

White == [1,1,1] 或 #ffffff 或 255,255,255,具体取决于您的应用程序。黑色 == [0,0,0] 等。

所以:标准化目标值(在这种情况下,它是 .6314),从 1 中减去,并作为 alpha 值应用于黑色层。您可以一次执行一个通道,并对结果进行平均,但为什么要麻烦,因为您的颜色(在眼睛看来)与中性灰色 #a1a1a1 无法区分。(如果有可见的色调,事情会变得更加复杂,因为通道将具有不同的值,但同样的原则适用。)

一个稍快的试错变体:

在 CMYK 文档中在 Photoshop 中创建十六进制颜色并查看 CMYK 值。我得到 39/32/31/1。

创建两个图层,顶部黑色和底部白色。

拉起信息窗口。另外,拉起图层窗口。

使用黑色层的不透明度。在您的颜色上使用吸管并在信息窗口中查看您的距离。这主要为您节省了更改不透明度的时间 - 展平 - 检查颜色 - 撤消展平。

鉴于您的前景色和背景色(R、G 和 B 通道的统一值),您无法#a1a2a4通过更改不透明度来获得不统一的颜色,因为不透明度会同时影响所有通道。#a1a1a1但是,您可以通过将黑色的不透明度设置为来获得“足够接近”的颜色0.37这是我使用的工具:

http://colorizer.org/

  1. 单击“背景”并将十六进制值设置为#fff
  2. 单击“按钮”并将十六进制值设置为#000
  3. 使用吸管实用程序在“Alpha/Opacity”光谱上找到目标颜色,然后单击光谱以获取不透明度值。