// Copyright (c) Six Labors and contributors. // Licensed under the Apache License, Version 2.0. using System; using System.Collections.Generic; using SixLabors.ImageSharp.PixelFormats; namespace SixLabors.ImageSharp.Tests { internal static class ReferencePalette { /// /// Gets a collection of named, web safe, colors as defined in the CSS Color Module Level 4. /// public static readonly Rgba32[] WebSafeColors = { Rgba32.AliceBlue, Rgba32.AntiqueWhite, Rgba32.Aqua, Rgba32.Aquamarine, Rgba32.Azure, Rgba32.Beige, Rgba32.Bisque, Rgba32.Black, Rgba32.BlanchedAlmond, Rgba32.Blue, Rgba32.BlueViolet, Rgba32.Brown, Rgba32.BurlyWood, Rgba32.CadetBlue, Rgba32.Chartreuse, Rgba32.Chocolate, Rgba32.Coral, Rgba32.CornflowerBlue, Rgba32.Cornsilk, Rgba32.Crimson, Rgba32.Cyan, Rgba32.DarkBlue, Rgba32.DarkCyan, Rgba32.DarkGoldenrod, Rgba32.DarkGray, Rgba32.DarkGreen, Rgba32.DarkKhaki, Rgba32.DarkMagenta, Rgba32.DarkOliveGreen, Rgba32.DarkOrange, Rgba32.DarkOrchid, Rgba32.DarkRed, Rgba32.DarkSalmon, Rgba32.DarkSeaGreen, Rgba32.DarkSlateBlue, Rgba32.DarkSlateGray, Rgba32.DarkTurquoise, Rgba32.DarkViolet, Rgba32.DeepPink, Rgba32.DeepSkyBlue, Rgba32.DimGray, Rgba32.DodgerBlue, Rgba32.Firebrick, Rgba32.FloralWhite, Rgba32.ForestGreen, Rgba32.Fuchsia, Rgba32.Gainsboro, Rgba32.GhostWhite, Rgba32.Gold, Rgba32.Goldenrod, Rgba32.Gray, Rgba32.Green, Rgba32.GreenYellow, Rgba32.Honeydew, Rgba32.HotPink, Rgba32.IndianRed, Rgba32.Indigo, Rgba32.Ivory, Rgba32.Khaki, Rgba32.Lavender, Rgba32.LavenderBlush, Rgba32.LawnGreen, Rgba32.LemonChiffon, Rgba32.LightBlue, Rgba32.LightCoral, Rgba32.LightCyan, Rgba32.LightGoldenrodYellow, Rgba32.LightGray, Rgba32.LightGreen, Rgba32.LightPink, Rgba32.LightSalmon, Rgba32.LightSeaGreen, Rgba32.LightSkyBlue, Rgba32.LightSlateGray, Rgba32.LightSteelBlue, Rgba32.LightYellow, Rgba32.Lime, Rgba32.LimeGreen, Rgba32.Linen, Rgba32.Magenta, Rgba32.Maroon, Rgba32.MediumAquamarine, Rgba32.MediumBlue, Rgba32.MediumOrchid, Rgba32.MediumPurple, Rgba32.MediumSeaGreen, Rgba32.MediumSlateBlue, Rgba32.MediumSpringGreen, Rgba32.MediumTurquoise, Rgba32.MediumVioletRed, Rgba32.MidnightBlue, Rgba32.MintCream, Rgba32.MistyRose, Rgba32.Moccasin, Rgba32.NavajoWhite, Rgba32.Navy, Rgba32.OldLace, Rgba32.Olive, Rgba32.OliveDrab, Rgba32.Orange, Rgba32.OrangeRed, Rgba32.Orchid, Rgba32.PaleGoldenrod, Rgba32.PaleGreen, Rgba32.PaleTurquoise, Rgba32.PaleVioletRed, Rgba32.PapayaWhip, Rgba32.PeachPuff, Rgba32.Peru, Rgba32.Pink, Rgba32.Plum, Rgba32.PowderBlue, Rgba32.Purple, Rgba32.RebeccaPurple, Rgba32.Red, Rgba32.RosyBrown, Rgba32.RoyalBlue, Rgba32.SaddleBrown, Rgba32.Salmon, Rgba32.SandyBrown, Rgba32.SeaGreen, Rgba32.SeaShell, Rgba32.Sienna, Rgba32.Silver, Rgba32.SkyBlue, Rgba32.SlateBlue, Rgba32.SlateGray, Rgba32.Snow, Rgba32.SpringGreen, Rgba32.SteelBlue, Rgba32.Tan, Rgba32.Teal, Rgba32.Thistle, Rgba32.Tomato, Rgba32.Transparent, Rgba32.Turquoise, Rgba32.Violet, Rgba32.Wheat, Rgba32.White, Rgba32.WhiteSmoke, Rgba32.Yellow, Rgba32.YellowGreen }; /// /// Gets a collection of colors as defined in the original second edition of Werner’s Nomenclature of Colours 1821. /// The hex codes were collected and defined by Nicholas Rougeux /// public static readonly Rgba32[] WernerColors = { Rgba32.ParseHex("#f1e9cd"), Rgba32.ParseHex("#f2e7cf"), Rgba32.ParseHex("#ece6d0"), Rgba32.ParseHex("#f2eacc"), Rgba32.ParseHex("#f3e9ca"), Rgba32.ParseHex("#f2ebcd"), Rgba32.ParseHex("#e6e1c9"), Rgba32.ParseHex("#e2ddc6"), Rgba32.ParseHex("#cbc8b7"), Rgba32.ParseHex("#bfbbb0"), Rgba32.ParseHex("#bebeb3"), Rgba32.ParseHex("#b7b5ac"), Rgba32.ParseHex("#bab191"), Rgba32.ParseHex("#9c9d9a"), Rgba32.ParseHex("#8a8d84"), Rgba32.ParseHex("#5b5c61"), Rgba32.ParseHex("#555152"), Rgba32.ParseHex("#413f44"), Rgba32.ParseHex("#454445"), Rgba32.ParseHex("#423937"), Rgba32.ParseHex("#433635"), Rgba32.ParseHex("#252024"), Rgba32.ParseHex("#241f20"), Rgba32.ParseHex("#281f3f"), Rgba32.ParseHex("#1c1949"), Rgba32.ParseHex("#4f638d"), Rgba32.ParseHex("#383867"), Rgba32.ParseHex("#5c6b8f"), Rgba32.ParseHex("#657abb"), Rgba32.ParseHex("#6f88af"), Rgba32.ParseHex("#7994b5"), Rgba32.ParseHex("#6fb5a8"), Rgba32.ParseHex("#719ba2"), Rgba32.ParseHex("#8aa1a6"), Rgba32.ParseHex("#d0d5d3"), Rgba32.ParseHex("#8590ae"), Rgba32.ParseHex("#3a2f52"), Rgba32.ParseHex("#39334a"), Rgba32.ParseHex("#6c6d94"), Rgba32.ParseHex("#584c77"), Rgba32.ParseHex("#533552"), Rgba32.ParseHex("#463759"), Rgba32.ParseHex("#bfbac0"), Rgba32.ParseHex("#77747f"), Rgba32.ParseHex("#4a475c"), Rgba32.ParseHex("#b8bfaf"), Rgba32.ParseHex("#b2b599"), Rgba32.ParseHex("#979c84"), Rgba32.ParseHex("#5d6161"), Rgba32.ParseHex("#61ac86"), Rgba32.ParseHex("#a4b6a7"), Rgba32.ParseHex("#adba98"), Rgba32.ParseHex("#93b778"), Rgba32.ParseHex("#7d8c55"), Rgba32.ParseHex("#33431e"), Rgba32.ParseHex("#7c8635"), Rgba32.ParseHex("#8e9849"), Rgba32.ParseHex("#c2c190"), Rgba32.ParseHex("#67765b"), Rgba32.ParseHex("#ab924b"), Rgba32.ParseHex("#c8c76f"), Rgba32.ParseHex("#ccc050"), Rgba32.ParseHex("#ebdd99"), Rgba32.ParseHex("#ab9649"), Rgba32.ParseHex("#dbc364"), Rgba32.ParseHex("#e6d058"), Rgba32.ParseHex("#ead665"), Rgba32.ParseHex("#d09b2c"), Rgba32.ParseHex("#a36629"), Rgba32.ParseHex("#a77d35"), Rgba32.ParseHex("#f0d696"), Rgba32.ParseHex("#d7c485"), Rgba32.ParseHex("#f1d28c"), Rgba32.ParseHex("#efcc83"), Rgba32.ParseHex("#f3daa7"), Rgba32.ParseHex("#dfa837"), Rgba32.ParseHex("#ebbc71"), Rgba32.ParseHex("#d17c3f"), Rgba32.ParseHex("#92462f"), Rgba32.ParseHex("#be7249"), Rgba32.ParseHex("#bb603c"), Rgba32.ParseHex("#c76b4a"), Rgba32.ParseHex("#a75536"), Rgba32.ParseHex("#b63e36"), Rgba32.ParseHex("#b5493a"), Rgba32.ParseHex("#cd6d57"), Rgba32.ParseHex("#711518"), Rgba32.ParseHex("#e9c49d"), Rgba32.ParseHex("#eedac3"), Rgba32.ParseHex("#eecfbf"), Rgba32.ParseHex("#ce536b"), Rgba32.ParseHex("#b74a70"), Rgba32.ParseHex("#b7757c"), Rgba32.ParseHex("#612741"), Rgba32.ParseHex("#7a4848"), Rgba32.ParseHex("#3f3033"), Rgba32.ParseHex("#8d746f"), Rgba32.ParseHex("#4d3635"), Rgba32.ParseHex("#6e3b31"), Rgba32.ParseHex("#864735"), Rgba32.ParseHex("#553d3a"), Rgba32.ParseHex("#613936"), Rgba32.ParseHex("#7a4b3a"), Rgba32.ParseHex("#946943"), Rgba32.ParseHex("#c39e6d"), Rgba32.ParseHex("#513e32"), Rgba32.ParseHex("#8b7859"), Rgba32.ParseHex("#9b856b"), Rgba32.ParseHex("#766051"), Rgba32.ParseHex("#453b32") }; public static readonly Dictionary ColorNames = new Dictionary(StringComparer.OrdinalIgnoreCase) { { nameof(Rgba32.AliceBlue), Rgba32.AliceBlue }, { nameof(Rgba32.AntiqueWhite), Rgba32.AntiqueWhite }, { nameof(Rgba32.Aqua), Rgba32.Aqua }, { nameof(Rgba32.Aquamarine), Rgba32.Aquamarine }, { nameof(Rgba32.Azure), Rgba32.Azure }, { nameof(Rgba32.Beige), Rgba32.Beige }, { nameof(Rgba32.Bisque), Rgba32.Bisque }, { nameof(Rgba32.Black), Rgba32.Black }, { nameof(Rgba32.BlanchedAlmond), Rgba32.BlanchedAlmond }, { nameof(Rgba32.Blue), Rgba32.Blue }, { nameof(Rgba32.BlueViolet), Rgba32.BlueViolet }, { nameof(Rgba32.Brown), Rgba32.Brown }, { nameof(Rgba32.BurlyWood), Rgba32.BurlyWood }, { nameof(Rgba32.CadetBlue), Rgba32.CadetBlue }, { nameof(Rgba32.Chartreuse), Rgba32.Chartreuse }, { nameof(Rgba32.Chocolate), Rgba32.Chocolate }, { nameof(Rgba32.Coral), Rgba32.Coral }, { nameof(Rgba32.CornflowerBlue), Rgba32.CornflowerBlue }, { nameof(Rgba32.Cornsilk), Rgba32.Cornsilk }, { nameof(Rgba32.Crimson), Rgba32.Crimson }, { nameof(Rgba32.Cyan), Rgba32.Cyan }, { nameof(Rgba32.DarkBlue), Rgba32.DarkBlue }, { nameof(Rgba32.DarkCyan), Rgba32.DarkCyan }, { nameof(Rgba32.DarkGoldenrod), Rgba32.DarkGoldenrod }, { nameof(Rgba32.DarkGray), Rgba32.DarkGray }, { nameof(Rgba32.DarkGreen), Rgba32.DarkGreen }, { nameof(Rgba32.DarkGrey), Rgba32.DarkGrey }, { nameof(Rgba32.DarkKhaki), Rgba32.DarkKhaki }, { nameof(Rgba32.DarkMagenta), Rgba32.DarkMagenta }, { nameof(Rgba32.DarkOliveGreen), Rgba32.DarkOliveGreen }, { nameof(Rgba32.DarkOrange), Rgba32.DarkOrange }, { nameof(Rgba32.DarkOrchid), Rgba32.DarkOrchid }, { nameof(Rgba32.DarkRed), Rgba32.DarkRed }, { nameof(Rgba32.DarkSalmon), Rgba32.DarkSalmon }, { nameof(Rgba32.DarkSeaGreen), Rgba32.DarkSeaGreen }, { nameof(Rgba32.DarkSlateBlue), Rgba32.DarkSlateBlue }, { nameof(Rgba32.DarkSlateGray), Rgba32.DarkSlateGray }, { nameof(Rgba32.DarkSlateGrey), Rgba32.DarkSlateGrey }, { nameof(Rgba32.DarkTurquoise), Rgba32.DarkTurquoise }, { nameof(Rgba32.DarkViolet), Rgba32.DarkViolet }, { nameof(Rgba32.DeepPink), Rgba32.DeepPink }, { nameof(Rgba32.DeepSkyBlue), Rgba32.DeepSkyBlue }, { nameof(Rgba32.DimGray), Rgba32.DimGray }, { nameof(Rgba32.DimGrey), Rgba32.DimGrey }, { nameof(Rgba32.DodgerBlue), Rgba32.DodgerBlue }, { nameof(Rgba32.Firebrick), Rgba32.Firebrick }, { nameof(Rgba32.FloralWhite), Rgba32.FloralWhite }, { nameof(Rgba32.ForestGreen), Rgba32.ForestGreen }, { nameof(Rgba32.Fuchsia), Rgba32.Fuchsia }, { nameof(Rgba32.Gainsboro), Rgba32.Gainsboro }, { nameof(Rgba32.GhostWhite), Rgba32.GhostWhite }, { nameof(Rgba32.Gold), Rgba32.Gold }, { nameof(Rgba32.Goldenrod), Rgba32.Goldenrod }, { nameof(Rgba32.Gray), Rgba32.Gray }, { nameof(Rgba32.Green), Rgba32.Green }, { nameof(Rgba32.GreenYellow), Rgba32.GreenYellow }, { nameof(Rgba32.Grey), Rgba32.Grey }, { nameof(Rgba32.Honeydew), Rgba32.Honeydew }, { nameof(Rgba32.HotPink), Rgba32.HotPink }, { nameof(Rgba32.IndianRed), Rgba32.IndianRed }, { nameof(Rgba32.Indigo), Rgba32.Indigo }, { nameof(Rgba32.Ivory), Rgba32.Ivory }, { nameof(Rgba32.Khaki), Rgba32.Khaki }, { nameof(Rgba32.Lavender), Rgba32.Lavender }, { nameof(Rgba32.LavenderBlush), Rgba32.LavenderBlush }, { nameof(Rgba32.LawnGreen), Rgba32.LawnGreen }, { nameof(Rgba32.LemonChiffon), Rgba32.LemonChiffon }, { nameof(Rgba32.LightBlue), Rgba32.LightBlue }, { nameof(Rgba32.LightCoral), Rgba32.LightCoral }, { nameof(Rgba32.LightCyan), Rgba32.LightCyan }, { nameof(Rgba32.LightGoldenrodYellow), Rgba32.LightGoldenrodYellow }, { nameof(Rgba32.LightGray), Rgba32.LightGray }, { nameof(Rgba32.LightGreen), Rgba32.LightGreen }, { nameof(Rgba32.LightGrey), Rgba32.LightGrey }, { nameof(Rgba32.LightPink), Rgba32.LightPink }, { nameof(Rgba32.LightSalmon), Rgba32.LightSalmon }, { nameof(Rgba32.LightSeaGreen), Rgba32.LightSeaGreen }, { nameof(Rgba32.LightSkyBlue), Rgba32.LightSkyBlue }, { nameof(Rgba32.LightSlateGray), Rgba32.LightSlateGray }, { nameof(Rgba32.LightSlateGrey), Rgba32.LightSlateGrey }, { nameof(Rgba32.LightSteelBlue), Rgba32.LightSteelBlue }, { nameof(Rgba32.LightYellow), Rgba32.LightYellow }, { nameof(Rgba32.Lime), Rgba32.Lime }, { nameof(Rgba32.LimeGreen), Rgba32.LimeGreen }, { nameof(Rgba32.Linen), Rgba32.Linen }, { nameof(Rgba32.Magenta), Rgba32.Magenta }, { nameof(Rgba32.Maroon), Rgba32.Maroon }, { nameof(Rgba32.MediumAquamarine), Rgba32.MediumAquamarine }, { nameof(Rgba32.MediumBlue), Rgba32.MediumBlue }, { nameof(Rgba32.MediumOrchid), Rgba32.MediumOrchid }, { nameof(Rgba32.MediumPurple), Rgba32.MediumPurple }, { nameof(Rgba32.MediumSeaGreen), Rgba32.MediumSeaGreen }, { nameof(Rgba32.MediumSlateBlue), Rgba32.MediumSlateBlue }, { nameof(Rgba32.MediumSpringGreen), Rgba32.MediumSpringGreen }, { nameof(Rgba32.MediumTurquoise), Rgba32.MediumTurquoise }, { nameof(Rgba32.MediumVioletRed), Rgba32.MediumVioletRed }, { nameof(Rgba32.MidnightBlue), Rgba32.MidnightBlue }, { nameof(Rgba32.MintCream), Rgba32.MintCream }, { nameof(Rgba32.MistyRose), Rgba32.MistyRose }, { nameof(Rgba32.Moccasin), Rgba32.Moccasin }, { nameof(Rgba32.NavajoWhite), Rgba32.NavajoWhite }, { nameof(Rgba32.Navy), Rgba32.Navy }, { nameof(Rgba32.OldLace), Rgba32.OldLace }, { nameof(Rgba32.Olive), Rgba32.Olive }, { nameof(Rgba32.OliveDrab), Rgba32.OliveDrab }, { nameof(Rgba32.Orange), Rgba32.Orange }, { nameof(Rgba32.OrangeRed), Rgba32.OrangeRed }, { nameof(Rgba32.Orchid), Rgba32.Orchid }, { nameof(Rgba32.PaleGoldenrod), Rgba32.PaleGoldenrod }, { nameof(Rgba32.PaleGreen), Rgba32.PaleGreen }, { nameof(Rgba32.PaleTurquoise), Rgba32.PaleTurquoise }, { nameof(Rgba32.PaleVioletRed), Rgba32.PaleVioletRed }, { nameof(Rgba32.PapayaWhip), Rgba32.PapayaWhip }, { nameof(Rgba32.PeachPuff), Rgba32.PeachPuff }, { nameof(Rgba32.Peru), Rgba32.Peru }, { nameof(Rgba32.Pink), Rgba32.Pink }, { nameof(Rgba32.Plum), Rgba32.Plum }, { nameof(Rgba32.PowderBlue), Rgba32.PowderBlue }, { nameof(Rgba32.Purple), Rgba32.Purple }, { nameof(Rgba32.RebeccaPurple), Rgba32.RebeccaPurple }, { nameof(Rgba32.Red), Rgba32.Red }, { nameof(Rgba32.RosyBrown), Rgba32.RosyBrown }, { nameof(Rgba32.RoyalBlue), Rgba32.RoyalBlue }, { nameof(Rgba32.SaddleBrown), Rgba32.SaddleBrown }, { nameof(Rgba32.Salmon), Rgba32.Salmon }, { nameof(Rgba32.SandyBrown), Rgba32.SandyBrown }, { nameof(Rgba32.SeaGreen), Rgba32.SeaGreen }, { nameof(Rgba32.SeaShell), Rgba32.SeaShell }, { nameof(Rgba32.Sienna), Rgba32.Sienna }, { nameof(Rgba32.Silver), Rgba32.Silver }, { nameof(Rgba32.SkyBlue), Rgba32.SkyBlue }, { nameof(Rgba32.SlateBlue), Rgba32.SlateBlue }, { nameof(Rgba32.SlateGray), Rgba32.SlateGray }, { nameof(Rgba32.SlateGrey), Rgba32.SlateGrey }, { nameof(Rgba32.Snow), Rgba32.Snow }, { nameof(Rgba32.SpringGreen), Rgba32.SpringGreen }, { nameof(Rgba32.SteelBlue), Rgba32.SteelBlue }, { nameof(Rgba32.Tan), Rgba32.Tan }, { nameof(Rgba32.Teal), Rgba32.Teal }, { nameof(Rgba32.Thistle), Rgba32.Thistle }, { nameof(Rgba32.Tomato), Rgba32.Tomato }, { nameof(Rgba32.Transparent), Rgba32.Transparent }, { nameof(Rgba32.Turquoise), Rgba32.Turquoise }, { nameof(Rgba32.Violet), Rgba32.Violet }, { nameof(Rgba32.Wheat), Rgba32.Wheat }, { nameof(Rgba32.White), Rgba32.White }, { nameof(Rgba32.WhiteSmoke), Rgba32.WhiteSmoke }, { nameof(Rgba32.Yellow), Rgba32.Yellow }, { nameof(Rgba32.YellowGreen), Rgba32.YellowGreen } }; } }