[JAVA] Android-Entwicklung, Helligkeitsanpassung von RGB-Farbe auf HSV,

Ich war bisher für iOS für meine Arbeit verantwortlich, aber ich bin auch an der Android-Entwicklung beteiligt, wahrscheinlich weil es derzeit nur wenige Ingenieure auf dem Gebiet gibt. Ich bin ein junger Mensch, aber ich studiere Java, weil es eine sehr wertvolle Erfahrung für meine zukünftige Karriereentwicklung ist. (Der Trend ist wahrscheinlich Kotlin) Also werde ich über die Methode sprechen, die in der Praxis stecken geblieben ist.

Anpassen der Helligkeit über Farbe

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);
    }

Sie können jetzt die Helligkeit anpassen. Da die maximale Helligkeit 1 (100%) beträgt, wird der Prozentsatz für die Verdunkelung von 1 angepasst. Zum Beispiel, wenn Sie die Helligkeit gegenüber der Originalfarbe um 15% reduzieren möchten Ersetzen Sie die Originalfarbe durch "Farbe" und "Helligkeit" durch "0,15".

(Referenz) Android-Dokumentfarbe https://developer.android.com/reference/android/graphics/Color

Apropos Die Helligkeit ist eine Art HSV-Farbraum. Der HSV-Raum ist einer der Farbräume, die von Computergrafiken verarbeitet werden. Farbton, Sättigung Chroma, Helligkeit Helligkeitswert Es besteht aus 3 Komponenten.

Die Farbklasse ist ein RGB-Farbraum oder ein ARGB-Farbraum.

Mit der obigen Methode

Color.colorToHSV(color, hsv);

Wenn Sie drücken, wird es ein Array von float [] hsv Der Farbton, die Sättigung und die Helligkeit werden entsprechend den Indizes 0, 1 und 2 des hsv-Arrays gespeichert. hsv [0]: Farbton hsv [1]: Sättigung hsv [2]: Helligkeit ist.

Für den Farbton werden Werte von 0,0 bis 360,0 gespeichert. Sättigung, Für die Helligkeit werden Werte von 0,0 bis 1,0 gespeichert.

Ich war ungefähr eine Stunde lang süchtig danach, ohne zu wissen, wie man diese colorToHSV-Methode verwendet.

Recommended Posts

Android-Entwicklung, Helligkeitsanpassung von RGB-Farbe auf HSV,
Ich habe die Android-Entwicklung, RGB, Hexadezimalzahl und Farbimplementierung aus der Ressourcendatei zusammengefasst
Konvertieren von Farbtemperatur in RGB (sRGB)
Was tun, wenn das Erstellen über die Befehlszeile in der Android-Entwicklungsumgebung fehlschlägt?
[Android-Entwicklung] Holen Sie sich mit Java Bilder vom Server und legen Sie sie in ImageView fest! !!