[JAVA] Développement Android, réglage de la luminosité de la couleur RVB au HSV,

J'ai été en charge d'iOS pour mon travail jusqu'à présent, mais je suis également impliqué dans le développement Android probablement parce qu'il y a peu d'ingénieurs dans le domaine maintenant. Je suis jeune, mais j'étudie Java car c'est une expérience très précieuse dans mon futur développement de carrière. (La tendance est probablement Kotlin) Je vais donc parler de la méthode bloquée dans la pratique.

Réglage de la luminosité à partir de la couleur

bright.java



    public int convertColorFromHSV(final int color, final float brightness) {
        final float[] hsv = new float[3];
        Color.colorToHSV(color, hsv);
        hsv[2] -= brightness;
        return Color.HSVToColor(hsv);
    }

Vous pouvez maintenant régler la luminosité. Étant donné que le maximum de luminosité est de 1 (100%), il s'agit d'un ajustement du pourcentage à assombrir à partir de 1. Par exemple, si vous souhaitez réduire la luminosité de 15% par rapport à la couleur d'origine Remplacez «couleur» par la couleur d'origine et 0,15 par «luminosité».

(Référence) Couleur du document Android https://developer.android.com/reference/android/graphics/Color

Au fait La luminosité est un type d'espace colorimétrique HSV. L'espace HSV est l'un des espaces colorimétriques gérés par l'infographie. Teinte, Saturation Chroma, Luminosité Luminosité Valeur Il est composé de 3 composants.

La classe Color est un espace colorimétrique RVB ou un espace colorimétrique ARVB.

Avec la méthode ci-dessus

Color.colorToHSV(color, hsv);

Lorsque vous frappez, cela devient un tableau de float [] hsv La teinte, la saturation et la clarté sont stockées en fonction des index 0, 1 et 2 du tableau hsv. hsv [0]: teinte hsv [1]: Saturation hsv [2]: Luminosité est.

Les valeurs de 0,0 à 360,0 sont stockées pour la teinte. saturation, Les valeurs de 0,0 à 1,0 sont enregistrées pour la légèreté.

J'y ai été accro pendant environ une heure sans savoir comment utiliser cette méthode colorToHSV.

Recommended Posts

Développement Android, réglage de la luminosité de la couleur RVB au HSV,
J'ai résumé le développement Android, RVB, nombre hexadécimal, implémentation des couleurs à partir du fichier de ressources
Conversion de la température de couleur en RVB (sRGB)
Que faire si la création à partir de la ligne de commande échoue dans l'environnement de développement Android
[Développement Android] Obtenez des images du serveur avec Java et définissez-les dans ImageView! !!