Rozwiązany: szesnastkowy javascript na rgb

Główny problem z konwersją szesnastkowych wartości kolorów na RGB polega na tym, że nie ma relacji jeden do jednego między tymi dwoma formatami. Na przykład kolor #FF0000 jest reprezentowany w RGB jako 255, 0, 0, ale w systemie szesnastkowym byłby równy kolorowi #F0. Oznacza to, że dwa różne kolory mogą mieć tę samą wartość RGB, jeśli składają się z różnych ilości każdego składnika koloru.

"use strict";

function hexToRgb(hex) {
    var result = /^#?([a-fd]{2})([a-fd]{2})([a-fd]{2})$/i.exec(hex);
    return result ? {
        r: parseInt(result[1], 16),
        g: parseInt(result[2], 16),
        b: parseInt(result[3], 16)
    } : null;
}

„użyj ściśle”;

Ten wiersz kodu włącza tryb ścisły, który umożliwia pisanie lepszego kodu JavaScript. W trybie ścisłym nie można używać niezadeklarowanych zmiennych. Ten wiersz kodu musi znajdować się na początku pliku JavaScript, aby działał tryb ścisły.

funkcja hexToRgb(hex) {
var wynik = /^#?([a-fd]{2})([a-fd]{2})([a-fd]{2})$/i.exec(szesnastkowo);
zwróć wynik? {
r: parseInt(wynik[1], 16),
g: parseInt(wynik[2], 16),
b: parseInt(wynik[3], 16)
} : zero;
}

Jest to funkcja, która konwertuje szesnastkową wartość koloru na wartość koloru RGB. Funkcja przyjmuje jeden parametr, którym jest szesnastkowa wartość koloru, którą chcesz przekonwertować. Funkcja używa wyrażenia regularnego w celu dopasowania wzorca szesnastkowej wartości koloru, a jeśli znajdzie dopasowanie, zwróci obiekt z wartościami koloru czerwonego, zielonego i niebieskiego. Jeśli nie znajdzie dopasowania, zwróci wartość null.

Konwersja między kolorami

Nie ma jednej uniwersalnej odpowiedzi na to pytanie, ponieważ najlepszy sposób konwersji kolorów między różnymi przestrzeniami kolorów może się różnić w zależności od konkretnych potrzeb aplikacji. Jednak kilka wskazówek, jak konwertować kolory między przestrzeniami kolorów w JavaScript można znaleźć poniżej.

Aby przekonwertować kolor z jednej przestrzeni kolorów na inną, możesz użyć funkcji rgb() i hsl(). Funkcje te przyjmują trzy argumenty: odpowiednio wartość czerwoną, zieloną i niebieską. Pierwszy argument określa podstawową przestrzeń kolorów (np. RGB), natomiast drugi i trzeci argumenty określają docelową przestrzeń kolorów (np. HSL).

Aby przekonwertować kolor z jednego formatu pikseli na inny, możesz użyć funkcji css(). Ta funkcja przyjmuje dwa argumenty: ciąg reprezentujący nazwę właściwości CSS (np. „kolor”) oraz liczbę reprezentującą pożądaną wartość tej właściwości (np. „50”).

Formaty kolorów

Istnieje kilka różnych formatów kolorów, których można używać w JavaScript.

RGB — czerwony, zielony, niebieski

HEX – #RRGGBB

HSL – Barwa, Nasycenie, Jasność

Powiązane posty:

Zostaw komentarz