Mit dieser Funktion können Sie eine Hex-Farbe programmgesteuert um einen bestimmten Betrag aufhellen oder abdunkeln. Übergeben Sie einfach eine Zeichenfolge wie „3F6D2A“ für die Farbe und eine Ganzzahl amt für den Betrag, der aufgehellt oder abgedunkelt werden soll. Übergeben Sie zum Abdunkeln eine negative Zahl (z. B. -20).
function LightenDarkenColor(col, amt) {
col = parseInt(col, 16);
return (((col & 0x0000FF) amt) | ((((col >> 8) & 0x00FF) amt) > 16) amt) Andere Versionen
Schnellere und kleinere Version:
function LightenDarkenColor(col, amt) {
var num = parseInt(col, 16);
var r = (num >> 16) amt;
var b = ((num >> 8) & 0x00FF) amt;
var g = (num & 0x0000FF) amt;
var newColor = g | (b Behandeln Sie Farben mit oder ohne #-Präfix:
function LightenDarkenColor(col, amt) {
var usePound = false;
if ( col[0] == "#" ) {
col = col.slice(1);
usePound = true;
}
var num = parseInt(col, 16);
var r = (num >> 16) amt;
if ( r > 255 ) r = 255;
else if (r > 8) & 0x00FF) amt;
if ( b > 255 ) b = 255;
else if (b 255 ) g = 255;
else if ( g Verwendung
Um die Funktion zu verwenden, übergeben Sie einfach die hexadezimale Farbzeichenfolge, die Sie aufhellen oder abdunkeln möchten, sowie den Betrag, um den Sie sie anpassen möchten. Der folgende Code hellt beispielsweise die Farbe „3F6D2A“ um 40 auf:
const lightenedColor = LightenDarkenColor("3F6D2A", 40);
console.log(`Lightened Color: ${lightenedColor}`); // Output: 7FADEE
Performance
Die Leistung dieser Funktion ist hinsichtlich Geschwindigkeit und Größe optimiert. Es verwendet bitweise Operationen, um die Farbwerte zu manipulieren, was es extrem schnell macht. Die Funktion ist außerdem sehr klein und daher ideal für den Einsatz in kleinen Anwendungen.
Funktionen
- Hellert oder verdunkelt eine Hex-Farbe um einen angegebenen Betrag
- Verwaltet Farben mit oder ohne #-Präfix
- Passt falsche Farbwerte an
- Gibt eine Hex-String-Darstellung des neuen zurück Farbe
Einschränkungen
- Die Funktion konvertiert die Farbe nicht in HSL, um die Farbe richtig aufzuhellen oder abzudunkeln. Daher können die Ergebnisse von Funktionen abweichen, die HSL verwenden.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3