2013-09-30 51 views
0

說我有兩種顏色,紅色和粉紅色。我將如何定義他們之間的關係,以便我能夠用它來獲得發言權,從藍色淡藍色? '粉紅'不只是淺紅色,所以我不想用ControlPaint.Light。我能想到的最簡單的方法是獲得紅色和粉紅色之間的HSB差異,並將其添加到基本藍色,但c#缺乏將這些HSB值轉換回RGB的方法,如果可以,我寧可不寫我自己的幫助它。有另一種方法嗎?基於另一對的關係將一種顏色轉換爲另一種顏色

+0

如果你不想寫自己的代碼,只需使用[現有的代碼( http://stackoverflow.com/questions/4123998/algorithm-to-switch-between-rgb-and-hsb-color-values) –

+0

@NicoSchertler我想使用盡可能少的非本地代碼 - 本質上是我我想知道在我發佈的這個方案旁邊有沒有辦法。 – idlackage

+0

Nico鏈接的代碼的非本地代碼是什麼? –

回答

1

如果要在不更改色調的情況下調整顏色的亮度,則最佳選擇是將RGB顏色轉換爲HSL。然後調整一定的亮度。然後根據需要將其轉換回RGB。

你可以找到很多的代碼示例使用來進行轉換,如下列:

Convert RGB bytes to HSL and back?

相關問題