Comment générer la couleur opposée d'une couleur donnée ?
Créer la couleur opposée d'une couleur donnée
Dans ce problème, le but est de générer une couleur qui est à l'opposé d'une couleur donnée couleur. La couleur opposée fait référence à l’aspect sombre/lumineux. Par exemple, si la couleur donnée est le noir, la couleur opposée sera le blanc.
Pour créer cette couleur opposée, une fonction nommée create_opp_color() est requise. Cette fonction doit accepter la couleur actuelle comme argument et renvoyer la couleur opposée. Voici comment aborder cette tâche :
Implémentation de la fonction :
- Convertir HEX en RVB : La couleur donnée est supposée être en Format hexadécimal. Tout d'abord, convertissez-le en composants RVB.
- Inverser les composants de couleur : Inversez les valeurs des composants R, V et B (soustrayez de 255).
- Convertir les composants inversés en HEX : Convertissez chaque composant inversé en HEX valeurs.
- Remplir les composants inversés : Chaque composant HEX doit être complété par des zéros pour garantir qu'il s'agit d'une valeur HEX à 2 chiffres.
- Reconstruire la chaîne de couleur HEX : Concaténez les composants HEX rembourrés pour former la couleur opposée chaîne.
Implémentation en JavaScript :
function create_opp_color(currentColor) { if (currentColor.indexOf('#') === 0) { currentColor = currentColor.slice(1); } if (currentColor.length === 3) { currentColor = currentColor.repeat(2); } const rgb = hexToRgb(currentColor); const invertedRgb = { r: 255 - rgb.r, g: 255 - rgb.g, b: 255 - rgb.b }; const invertedHex = rgbToHex(invertedRgb); return '#' + invertedHex; } function rgbToHex(rgb) { let hex = ''; for (const key in rgb) { if (rgb.hasOwnProperty(key)) { const component = rgb[key].toString(16); hex += component.length === 1 ? '0' + component : component; } } return hex; } function hexToRgb(hex) { let rgb = {}; ['r', 'g', 'b'].forEach((key, i) => { rgb[key] = parseInt(hex.substr(i * 2, 2), 16); }); return rgb; }
Technique avancée :
Si vous avez besoin de plus de contraste , vous pouvez utiliser le noir ou le blanc comme couleur opposée en fonction de la luminosité de la couleur d'origine. Voici une fonction modifiée pour ce faire :
function create_opp_color(currentColor) { if (currentColor.indexOf('#') === 0) { currentColor = currentColor.slice(1); } if (currentColor.length === 3) { currentColor = currentColor.repeat(2); } const rgb = hexToRgb(currentColor); const brightness = Math.round((rgb.r * 0.299 + rgb.g * 0.587 + rgb.b * 0.114) / 255 * 100); return brightness > 50 ? '#000000' : '#FFFFFF'; }
Maintenant, en utilisant cette fonction, vous pouvez facilement générer la couleur opposée d'une couleur donnée, qu'elle soit claire ou foncée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Si vous avez récemment commencé à travailler avec GraphQL ou examiné ses avantages et ses inconvénients, vous avez sans aucun doute entendu des choses comme "GraphQL ne prend pas en charge la mise en cache" ou

Avec la récente montée du prix du bitcoin sur 20k $ USD, et pour lui, récemment en train de briser 30k, je pensais que cela valait la peine de reprendre une profonde plongeon dans la création d'Ethereum

Quelle que soit le stade dans lequel vous vous trouvez en tant que développeur, les tâches que nous effectuons - qu'elles soient grandes ou petites - ont un impact énorme dans notre croissance personnelle et professionnelle.

Il est sorti! Félicitations à l'équipe Vue pour l'avoir fait, je sais que ce fut un effort massif et une longue période à venir. Tous les nouveaux documents aussi.

J'ai eu quelqu'un qui écrivait avec cette question très légitime. Lea vient de bloguer sur la façon dont vous pouvez obtenir les propriétés CSS valides elles-mêmes du navigateur. C'est comme ça.

Je dirais que "Site Web" correspond mieux que "Application mobile" mais j'aime ce cadrage de Max Lynch:

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

Il existe un certain nombre de ces applications de bureau où l'objectif montre votre site à différentes dimensions en même temps. Vous pouvez donc, par exemple, écrire
