add more palettes

This commit is contained in:
2022-03-31 05:50:19 -07:00
parent 0b13c2fd79
commit 5fc2798455
6 changed files with 250 additions and 1 deletions

1
.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
go-colorpalettes

View File

@@ -1,4 +1,4 @@
package main
package color_hex
var Palettes = map[string][]int{"Facebook": {0x3B5998,
0x8B9DC3,

3
go.mod Normal file
View File

@@ -0,0 +1,3 @@
module github.com/taigrr/go-colorpalettes
go 1.18

144
html/html.go Normal file
View File

@@ -0,0 +1,144 @@
package html
var Colors = map[string]int{
"aliceblue": 0xF0F8FF,
"antiquewhite": 0xFAEBD7,
"aqua": 0x00FFFF,
"aquamarine": 0x7FFFD4,
"azure": 0xF0FFFF,
"beige": 0xF5F5DC,
"bisque": 0xFFE4C4,
"black": 0x000000,
"blanchedalmond": 0xFFEBCD,
"blue": 0x0000FF,
"blueviolet": 0x8A2BE2,
"brown": 0xA52A2A,
"burlywood": 0xDEB887,
"cadetblue": 0x5F9EA0,
"chartreuse": 0x7FFF00,
"chocolate": 0xD2691E,
"coral": 0xFF7F50,
"cornflowerblue": 0x6495ED,
"cornsilk": 0xFFF8DC,
"crimson": 0xDC143C,
"cyan": 0x00FFFF,
"darkblue": 0x00008B,
"darkcyan": 0x008B8B,
"darkgoldenrod": 0xB886BB,
"darkgray": 0xA9A9A9,
"darkgreen": 0x006400,
"darkkhaki": 0xBDB76B,
"darkmagenta": 0x8B008B,
"darkolivegreen": 0x556B2F,
"darkorange": 0xFF8C00,
"darkorchid": 0x9932CC,
"darkred": 0x8B0000,
"darksalmon": 0xE9967A,
"darkseagreen": 0x8FBC8F,
"darkslateblue": 0x483D8B,
"darkslategray": 0x2F4F4F,
"darkturquoise": 0x00CED1,
"darkviolet": 0x9400D3,
"deeppink": 0xFF1493,
"deepskyblue": 0x00BFFF,
"dimgray": 0x696969,
"dodgerblue": 0x1E90FF,
"firebrick": 0xB22222,
"floralwhite": 0xFFFAF0,
"forestgreen": 0x228B22,
"fuchsia": 0xFF00FF,
"gainsboro": 0xDCDCDC,
"ghostwhite": 0xF8F8FF,
"gold": 0xFFD700,
"goldenrod": 0xDAA520,
"gray": 0xBEBEBE,
"green": 0x008000,
"greenyellow": 0xADFF2F,
"honeydew": 0xF0FFF0,
"hotpink": 0xFF69B4,
"indianred": 0xCD5C5C,
"indigo": 0x4B0082,
"ivory": 0xFFFFF0,
"khaki": 0xF0D58C,
"lavender": 0xE6E6FA,
"lavenderblush": 0xFFF0F5,
"lawngreen": 0x7CFC00,
"lemonchiffon": 0xFFFACD,
"lightblue": 0xADD8E6,
"lightcoral": 0xF08080,
"lightcyan": 0xE0FFFF,
"lightgoldenrodyellow": 0xFAFAD2,
"lightgreen": 0x90EE90,
"lightgrey": 0xD3D3D3,
"lightpink": 0xFFB6C1,
"lightsalmon": 0xFFA07A,
"lightseagreen": 0x20B2AA,
"lightskyblue": 0x87CEFA,
"lightslategray": 0x778899,
"lightsteelblue": 0xB0C4DE,
"lightyellow": 0xFFFFE0,
"lime": 0x00FF00,
"limegreen": 0x32CD32,
"linen": 0xFAF0E6,
"magenta": 0xFF00FF,
"maroon": 0x800000,
"mediumaquamarine": 0x66CDAA,
"mediumblue": 0x0000CD,
"mediumorchid": 0xBA55D3,
"mediumpurple": 0x9370DB,
"mediumseagreen": 0x3CB371,
"mediumslateblue": 0x7B68EE,
"mediumspringgreen": 0x00FA9A,
"mediumturquoise": 0x48D1CC,
"mediumvioletred": 0xC71585,
"midnightblue": 0x191970,
"mintcream": 0xF5FFFA,
"mistyrose": 0xFFE4E1,
"moccasin": 0xFFE4B5,
"navajowhite": 0xFFDEAD,
"navy": 0x000080,
"oldlace": 0xFDF5E6,
"olive": 0x808000,
"olivedrab": 0x6B8E23,
"orange": 0xFFA500,
"orangered": 0xFF4500,
"orchid": 0xDA70D6,
"palegoldenrod": 0xEEE8AA,
"palegreen": 0x98FB98,
"paleturquoise": 0xAFEEEE,
"palevioletred": 0xDB7093,
"papayawhip": 0xFFEFD5,
"peachpuff": 0xFFDAB9,
"peru": 0xCD853F,
"pink": 0xFFC0CB,
"plum": 0xDDA0DD,
"powderblue": 0xB0E0E6,
"purple": 0x800080,
"red": 0xFF0000,
"rosybrown": 0xBC8F8F,
"royalblue": 0x4169E1,
"saddlebrown": 0x8B4513,
"salmon": 0xFA8072,
"sandybrown": 0xF4A460,
"seagreen": 0x2E8B57,
"seashell": 0xFFF5EE,
"sienna": 0xA0522D,
"silver": 0xC0C0C0,
"skyblue": 0x87CEEB,
"slateblue": 0x6A5ACD,
"slategray": 0x708090,
"snow": 0xFFFAFA,
"springgreen": 0x00FF7F,
"steelblue": 0x4682B4,
"tan": 0xD2B48C,
"teal": 0x008080,
"thistle": 0xD8BFD8,
"tomato": 0xFF6347,
"turquoise": 0x40E0D0,
"violet": 0xEE82EE,
"wheat": 0xF5DEB3,
"white": 0xFFFFFF,
"whitesmoke": 0xF5F5F5,
"yellow": 0xFFFF00,
"yellowgreen": 0x9ACD32,
}

58
main.go Normal file
View File

@@ -0,0 +1,58 @@
package main
import (
"fmt"
"strings"
"github.com/taigrr/go-colorpalettes/material"
)
func main() {
colors := material.GetShadesForColorName("Red")
var open []string
var close []string
for _, c := range colors {
red := c >> 16 & 0xFF
green := c >> 8 & 0xFF
blue := c & 0xFF
if (float32(red)*0.299 + float32(green)*0.587 + float32(blue)*0.114) > 150.0 {
open = append(open, fmt.Sprintf("\u001B[38;2;%d;%d;%dm", 0, 0, 0))
} else {
open = append(open, fmt.Sprintf("\u001B[38;2;%d;%d;%dm", 255, 255, 255))
}
close = append(close, "\u001B[39m")
open = append(open, fmt.Sprintf("\u001B[48;2;%d;%d;%dm", red, green, blue))
close = append(close, "\u001B[49m")
// if m.isUnderlined {
//open = append(open, "\u001B[4m")
//close = append(close, "\u001B[24m")
// }
// if m.isDim {
// open = append(open, "\u001B[2m")
// close = append(close, "\u001B[22m")
// }
//
// if m.isItalic {
// open = append(open, "\u001B[3m")
// close = append(close, "\u001B[23m")
// }
// if m.isBold {
// open = append(open, "\u001B[1m")
// close = append(close, "\u001B[21m")
// }
var b strings.Builder
fmt.Fprint(&b, strings.Join(open, ""))
fmt.Fprint(&b, "adasdasd")
fmt.Fprint(&b, strings.Join(close, ""))
fmt.Print(b.String() + " ")
}
fmt.Println("")
}

View File

@@ -1,5 +1,7 @@
package material
import "sort"
type ColorPallette map[string]int
var Red = ColorPallette{
@@ -119,3 +121,44 @@ var BlueGrey = ColorPallette{
"400": 0x78909c, "500": 0x607d8b, "600": 0x546e7a, "700": 0x455a64,
"800": 0x37474f, "900": 0x263238,
}
var Spectrum = map[string]ColorPallette{
"Red": Red,
"Pink": Pink,
"Purple": Purple,
// These colors render too similarly to Purple for most use cases
// "DeepPurple": DeepPurple,
"Blue": Blue,
"LightBlue": LightBlue,
"Cyan": Cyan,
"Teal": Teal,
"Green": Green,
"LightGreen": LightGreen,
"Lime": Lime,
"Yellow": Yellow,
"Amber": Amber,
"Orange": Orange,
"DeepOrange": DeepOrange,
"Brown": Brown,
"Grey": Grey,
"BlueGrey": BlueGrey,
}
func GetColorsForShade(shade string) (colors []int) {
for _, cp := range Spectrum {
if hue, ok := cp[shade]; ok {
colors = append(colors, hue)
sort.Ints(colors)
}
}
return
}
func GetShadesForColorName(color string) (colors []int) {
if c, ok := Spectrum[color]; ok {
for _, cp := range c {
colors = append(colors, cp)
sort.Ints(colors)
}
}
return
}