Riješeno: javascript hex u rgb

Glavni problem s pretvaranjem heksadecimalnih vrijednosti boja u RGB je taj što ne postoji korespondencija jedan na jedan između dva formata. Na primjer, boja #FF0000 predstavljena je u RGB kao 255, 0, 0, ali u heksadecimalnom bi bila jednaka boji #F0. To znači da dvije različite boje mogu imati istu RGB vrijednost ako se sastoje od različitih količina svake komponente boje.

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

“Koristiti strogo”;

Ova linija koda omogućuje strogi način rada, što je način za pisanje boljeg JavaScripta. U strogom načinu rada ne možete koristiti nedeklarirane varijable. Ovaj redak koda mora biti na vrhu vaše JavaScript datoteke kako bi strogi način rada funkcionirao.

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

Ovo je funkcija koja pretvara heksadecimalnu vrijednost boje u RGB vrijednost boje. Funkcija uzima jedan parametar, a to je heksadecimalna vrijednost boje koju želite pretvoriti. Funkcija koristi regularni izraz za podudaranje uzorka heksadecimalne vrijednosti boje, a ako pronađe podudaranje, vratit će objekt s vrijednostima crvene, zelene i plave. Ako ne pronađe podudaranje, vratit će null.

Pretvorba između boja

Ne postoji jednoznačan odgovor na ovo pitanje, budući da najbolji način pretvaranja boja između različitih prostora boja može varirati ovisno o specifičnim potrebama vaše aplikacije. Međutim, neki savjeti o tome kako pretvoriti boje između prostora boja u JavaScriptu mogu se pronaći u nastavku.

Za pretvaranje boje iz jednog prostora boja u drugi, možete koristiti funkcije rgb() i hsl(). Ove funkcije primaju tri argumenta: redom crvenu, zelenu i plavu vrijednost. Prvi argument specificira osnovni prostor boja (npr. RGB), dok drugi i treći argument specificiraju ciljani prostor boja (npr. HSL).

Za pretvaranje boje iz jednog formata piksela u drugi, možete koristiti funkciju css(). Ova funkcija prima dva argumenta: niz koji predstavlja naziv CSS svojstva (npr. "boja") i broj koji predstavlja željenu vrijednost za to svojstvo (npr. "50").

Formati boja

Postoji nekoliko različitih formata boja koje možete koristiti u JavaScriptu.

RGB – crvena, zelena, plava

HEX – #RRGGBB

HSL – nijansa, zasićenost, svjetlina

Povezani postovi:

Ostavite komentar