-2
私は5050 LEDストリップのLED色を制御するアプリを作っています。カラーピッカーは私にRGBコードを提供しますが、5050 LEDストリップはCMYKカラーフォーマットに従います。アンドロイドスタジオでRGB値(0〜255)をCMYK値(0〜99)に変換する方法はありますか?アンドロイドスタジオのRGB値(0〜255)をCMYK値(0〜99)に変換する方法はありますか?
私は5050 LEDストリップのLED色を制御するアプリを作っています。カラーピッカーは私にRGBコードを提供しますが、5050 LEDストリップはCMYKカラーフォーマットに従います。アンドロイドスタジオでRGB値(0〜255)をCMYK値(0〜99)に変換する方法はありますか?アンドロイドスタジオのRGB値(0〜255)をCMYK値(0〜99)に変換する方法はありますか?
ここでは、RGBをCMYKに変換する単純なクラスです。通常、cmykは0.0から1.0までです。スケーラーを使用して0から99になります。cmykに変換するネイティブが見つかりました。 。
public class CMYK
{
float cyan = 0.0f;
float magenta = 0.0f;
float yellow = 0.0f;
float black = 0.0f;
public void convertRGBtoCMYK(int r, int g, int b)
{
float _r = (float) (r/255);
float _g = (float) (g/255);
float _b = (float) (b/255);
black = 1.0f - max(_r, _g, _b);
cyan = (1.0f - _r - black)/(1.0f - black);
magenta = (1.0f - _g - black)/(1.0f - black);
yellow = (1.0f - _b - black)/(1.0f - black);
}
private float max(float a, float b, float c)
{
if (a > b && a > c)
return a;
if (b > a && b > c)
return b;
if (c > a && c > b)
return c;
// all equal just return a
return a;
}
}