Les spécifications de conception des matériaux de Google comprennent des palettes de couleurs :
Commençant par une couleur primaire de base, qu’ils désignent par "500", ils disposent alors d’une gamme d’étapes incrémentielles d’ombre, plus brillantes et plus sombres, pour créer une gamme d’environ 10 couleurs. Le plus clair est désigné "50" et est presque blanc, et le plus sombre, "900" est presque noir, mais les deux conservent une partie de la couleur de base.
Je n'arrive pas à déterminer comment les incréments sont calculés. J'ai essayé ce générateur d'échantillons en ligne , mais je n'arrive pas à composer le numéro.
Je pense que c'est juste une question de réglage de la luminosité de haut en bas à partir de la couleur de base "500", et je suppose qu'une valeur de "0" serait blanc pur et "1000" serait noir pur, mais les gammes de Google La palette semble avoir plus de saturation qu'une simple plage de luminosité.
Est-ce que quelqu'un sait quel algorithme ou processus je peux utiliser pour prendre une couleur de base et générer une palette en ligne avec les palettes de Google?
la source
Réponses:
J'ai créé ce petit outil CSS3 / AngularJS pour un projet de génération de palettes de couleurs de matériau. Vous pouvez entrer votre couleur 500 hex et utiliser un outil externe tel que ColorZilla pour obtenir les valeurs de couleur à partir de cet emplacement. De plus, les plus légers sont exactement ceux utilisés par Google, mais les plus sombres sont un peu décalés.
mcg.mbitson.com
la source
Les palettes Google sont monochromes . Qui conserve le même rapport RVB en décalant la luminosité et la saturation vers le haut ou le bas. Pour ce faire, vous devez convertir la valeur RVB en représentation HSL (Teinte, Saturation, Luminosité), modifier la luminosité et la saturation, puis reconvertir si nécessaire. Il est possible de le conserver dans l'espace RVB lors du calcul, mais les calculs sont trop compliqués (pour que je puisse les comprendre ou les expliquer). HSL a été créé pour le mélange de couleurs traditionnel (il est plus facile pour nous d'y penser).
Si votre objectif est de créer des palettes CSS, vous pouvez conserver la couleur dans HSL
background-color: hsl(0,100%, 50%);
.Vous pouvez le faire manuellement dans Photoshop à l'aide du sélecteur de couleurs. Le HSB est pour Hue Saturation Brightness (synonyme de HSL, même chose). Choisissez une teinte que vous aimez et modifiez la saturation et la luminosité d'une valeur constante. Dans l'image ci-dessous, S = 54 et B = 77, augmentez de 5% avec
54 + 54 * 0.05
et77 + 77 * 0.05
. Ou pour descendreS - S * 0.05
Note latérale pour clarifier entre Hex et RGB. Le code HEX # FFEB3B à 6 chiffres correspond en réalité à 3 chiffres distincts, représentant le format RVB.
#FFEB3B -> FF,EB,3B -> red:FF green:EB blue:3B
vous donne la conversion des valeurs HEX en valeurs décimalesred:255 green:235 blue:59 OR rgb(255,235,59)
.Il existe des algorithmes pour convertir RVB en HSL si vous les voulez vraiment sur Wikipedia, mais le moyen le plus simple consiste à utiliser une bibliothèque de couleurs. Cet exemple crée une palette monochromatique avec please.js. Il comporte également d'autres algorithmes permettant de créer des palettes complémentaires ou agréables. Un peu comme kuler.adobe, qui bouge aussi.
la source
Avez-vous essayé de travailler avec Color Wheel d'Adobe? Je pense que c'est un peu plus flexible que l'outil SlayerOffice que vous utilisez.
https://color.adobe.com/
Pour votre cas exact, choisissez "Shades" et essayez de vous amuser à partir de là. Cela ne générera pas une conception matérielle semblable à celle des échantillons, mais c'est un début.
la source
Vous pouvez simplement télécharger les palettes vers lesquelles Google donne un lien sur le site? Puisqu'il te donne toutes les couleurs?
Google Color Swatches Zip
la source
Pour générer un dégradé de couleurs / palette à partir d'une couleur donnée, vous pouvez utiliser essentiellement l'algorithme suivant.
Pour diviser l’espace colorimétrique, commencez par convertir les couleurs de votre HEX en RVB. Sélectionnez des valeurs dans chaque canal. Disons que vous avez color1 (r1, g1, b1) et color2 (r2, g2, b2). Et vous voulez 3 couleurs entre color1 et color2 , alors vous pouvez faire quelque chose comme suit
N'oubliez pas de convertir les valeurs RVB entre (0 et 1).
Dans votre cas, vous pouvez prendre la couleur de base et diviser l’espace colorimétrique entre
white to basecolor
etbasecolor to black
. Vous pouvez ajuster vos pas en fonction de vos besoins.Enfin, je vais faire une promotion sans vergogne de la bibliothèque python que j'ai créée, simplement parce que cela concerne la question de la génération de palette de couleurs. Cela s'appelle SecretColors . Vous pouvez générer vos propres palettes de couleurs, dégradés ou utiliser des palettes de couleurs standard telles que IBM, Material Design, ColorBrewer ou Clarity.
la source