Atrisināts: javascript hex uz rgb

Galvenā problēma, pārveidojot heksadecimālās krāsas vērtības uz RGB, ir tāda, ka starp abiem formātiem nav savstarpējas atbilstības. Piemēram, krāsa #FF0000 RGB formātā tiek attēlota kā 255, 0, 0, bet heksadecimālā tā būtu vienāda ar krāsu #F0. Tas nozīmē, ka divām dažādām krāsām var būt vienāda RGB vērtība, ja tās sastāv no dažādiem katras krāsas komponenta daudzumiem.

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

"izmantot stingri";

Šī koda rinda iespējo stingro režīmu, kas ir veids, kā rakstīt labāku JavaScript. Stingrā režīmā nevar izmantot nedeklarētus mainīgos. Lai striktais režīms darbotos, šai koda rindiņai ir jāatrodas JavaScript faila augšdaļā.

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

Šī ir funkcija, kas pārvērš hex krāsu vērtību RGB krāsu vērtībā. Funkcija uzņem vienu parametru, kas ir heksadecimāla krāsa, kuru vēlaties konvertēt. Funkcija izmanto regulāro izteiksmi, lai saskaņotu heksadecimālās krāsas vērtības modeli, un, ja tā atrod atbilstību, tā atgriezīs objektu ar sarkano, zaļo un zilo vērtību. Ja tas neatrod atbilstību, tas atgriezīs nulli.

Konversija starp krāsām

Uz šo jautājumu nav viennozīmīgas atbildes, jo labākais veids, kā pārveidot krāsas starp dažādām krāsu telpām, var atšķirties atkarībā no jūsu lietojumprogrammas īpašajām vajadzībām. Tomēr dažus padomus par krāsu pārveidošanu starp krāsu telpām JavaScript var atrast tālāk.

Lai pārvērstu krāsu no vienas krāsu telpas citā, varat izmantot funkcijas rgb() un hsl(). Šīm funkcijām ir trīs argumenti: attiecīgi sarkana, zaļa un zila vērtība. Pirmais arguments norāda bāzes krāsu telpu (piemēram, RGB), bet otrais un trešais arguments norāda mērķa krāsu telpu (piemēram, HSL).

Lai pārvērstu krāsu no viena pikseļu formāta uz citu, varat izmantot funkciju css(). Šai funkcijai ir divi argumenti: virkne, kas attēlo CSS rekvizīta nosaukumu (piemēram, “krāsa”), un skaitlis, kas apzīmē šī rekvizīta vēlamo vērtību (piemēram, “50”).

Krāsu formāti

Ir daži dažādi krāsu formāti, kurus varat izmantot JavaScript.

RGB - sarkans, zaļš, zils

HEX — #RRGBB

HSL – nokrāsa, piesātinājums, vieglums

Related posts:

Leave a Comment