我正在寻找一种方法来找到RGB颜色的分裂互补。我目前正在使用Javascript,但这并不重要。我只是在寻找伪代码或任何代码示例。我已经用Google搜索过几次这个问题,但我似乎无法得出任何结果。谁有我的公式?
另外,我想在此过程中尽量避免转换为任何其他颜色格式,因为这可能会很痛苦。
答案 0 :(得分:2)
转换为HSV然后将色相角修改180°±30°左右。
HSV的转换很常见且很容易获得。但是你只需要角度位,通过补码调整它,然后通过拆分将该吸盘重新输入RGB。
rgb2hsv(r,g,b);
h += 180;
h0 = h + 30;
h1 = h - 30;
hsv2rgb(h0,s,v);
hsv2rgb(h1,s,v);
或多或少。从chroma.js或任何代码库中选取rgb2hsv和hsv2rgb。或者抓住两者的副本并将它们与您想要的东西混合在一起并制作单一功能的东西。