|
4 | 4 |
|
5 | 5 | class Color extends CSSFunction {
|
6 | 6 |
|
7 |
| - public function __construct($aColor) { |
| 7 | + static $names = ARRAY( |
| 8 | + // Colors as they are defined in HTML 3.2 |
| 9 | + "black" => array("red" => 0x00, "green" => 0x00, "blue" => 0x00), |
| 10 | + "maroon" => array("red" => 0x80, "green" => 0x00, "blue" => 0x00), |
| 11 | + "green" => array("red" => 0x00, "green" => 0x80, "blue" => 0x00), |
| 12 | + "olive" => array("red" => 0x80, "green" => 0x80, "blue" => 0x00), |
| 13 | + "navy" => array("red" => 0x00, "green" => 0x00, "blue" => 0x80), |
| 14 | + "purple" => array("red" => 0x80, "green" => 0x00, "blue" => 0x80), |
| 15 | + "teal" => array("red" => 0x00, "green" => 0x80, "blue" => 0x80), |
| 16 | + "gray" => array("red" => 0x80, "green" => 0x80, "blue" => 0x80), |
| 17 | + "silver" => array("red" => 0xC0, "green" => 0xC0, "blue" => 0xC0), |
| 18 | + "red" => array("red" => 0xFF, "green" => 0x00, "blue" => 0x00), |
| 19 | + "lime" => array("red" => 0x00, "green" => 0xFF, "blue" => 0x00), |
| 20 | + "yellow" => array("red" => 0xFF, "green" => 0xFF, "blue" => 0x00), |
| 21 | + "blue" => array("red" => 0x00, "green" => 0x00, "blue" => 0xFF), |
| 22 | + "fuchsia" => array("red" => 0xFF, "green" => 0x00, "blue" => 0xFF), |
| 23 | + "aqua" => array("red" => 0x00, "green" => 0xFF, "blue" => 0xFF), |
| 24 | + "white" => array("red" => 0xFF, "green" => 0xFF, "blue" => 0xFF), |
| 25 | + |
| 26 | + // Additional colors as they are used by Netscape and IE |
| 27 | + "aliceblue" => array("red" => 0xF0, "green" => 0xF8, "blue" => 0xFF), |
| 28 | + "antiquewhite" => array("red" => 0xFA, "green" => 0xEB, "blue" => 0xD7), |
| 29 | + "aquamarine" => array("red" => 0x7F, "green" => 0xFF, "blue" => 0xD4), |
| 30 | + "azure" => array("red" => 0xF0, "green" => 0xFF, "blue" => 0xFF), |
| 31 | + "beige" => array("red" => 0xF5, "green" => 0xF5, "blue" => 0xDC), |
| 32 | + "blueviolet" => array("red" => 0x8A, "green" => 0x2B, "blue" => 0xE2), |
| 33 | + "brown" => array("red" => 0xA5, "green" => 0x2A, "blue" => 0x2A), |
| 34 | + "burlywood" => array("red" => 0xDE, "green" => 0xB8, "blue" => 0x87), |
| 35 | + "cadetblue" => array("red" => 0x5F, "green" => 0x9E, "blue" => 0xA0), |
| 36 | + "chartreuse" => array("red" => 0x7F, "green" => 0xFF, "blue" => 0x00), |
| 37 | + "chocolate" => array("red" => 0xD2, "green" => 0x69, "blue" => 0x1E), |
| 38 | + "coral" => array("red" => 0xFF, "green" => 0x7F, "blue" => 0x50), |
| 39 | + "cornflowerblue" => array("red" => 0x64, "green" => 0x95, "blue" => 0xED), |
| 40 | + "cornsilk" => array("red" => 0xFF, "green" => 0xF8, "blue" => 0xDC), |
| 41 | + "crimson" => array("red" => 0xDC, "green" => 0x14, "blue" => 0x3C), |
| 42 | + "darkblue" => array("red" => 0x00, "green" => 0x00, "blue" => 0x8B), |
| 43 | + "darkcyan" => array("red" => 0x00, "green" => 0x8B, "blue" => 0x8B), |
| 44 | + "darkgoldenrod" => array("red" => 0xB8, "green" => 0x86, "blue" => 0x0B), |
| 45 | + "darkgray" => array("red" => 0xA9, "green" => 0xA9, "blue" => 0xA9), |
| 46 | + "darkgreen" => array("red" => 0x00, "green" => 0x64, "blue" => 0x00), |
| 47 | + "darkkhaki" => array("red" => 0xBD, "green" => 0xB7, "blue" => 0x6B), |
| 48 | + "darkmagenta" => array("red" => 0x8B, "green" => 0x00, "blue" => 0x8B), |
| 49 | + "darkolivegreen" => array("red" => 0x55, "green" => 0x6B, "blue" => 0x2F), |
| 50 | + "darkorange" => array("red" => 0xFF, "green" => 0x8C, "blue" => 0x00), |
| 51 | + "darkorchid" => array("red" => 0x99, "green" => 0x32, "blue" => 0xCC), |
| 52 | + "darkred" => array("red" => 0x8B, "green" => 0x00, "blue" => 0x00), |
| 53 | + "darksalmon" => array("red" => 0xE9, "green" => 0x96, "blue" => 0x7A), |
| 54 | + "darkseagreen" => array("red" => 0x8F, "green" => 0xBC, "blue" => 0x8F), |
| 55 | + "darkslateblue" => array("red" => 0x48, "green" => 0x3D, "blue" => 0x8B), |
| 56 | + "darkslategray" => array("red" => 0x2F, "green" => 0x4F, "blue" => 0x4F), |
| 57 | + "darkturquoise" => array("red" => 0x00, "green" => 0xCE, "blue" => 0xD1), |
| 58 | + "darkviolet" => array("red" => 0x94, "green" => 0x00, "blue" => 0xD3), |
| 59 | + "deeppink" => array("red" => 0xFF, "green" => 0x14, "blue" => 0x93), |
| 60 | + "deepskyblue" => array("red" => 0x00, "green" => 0xBF, "blue" => 0xFF), |
| 61 | + "dimgray" => array("red" => 0x69, "green" => 0x69, "blue" => 0x69), |
| 62 | + "dodgerblue" => array("red" => 0x1E, "green" => 0x90, "blue" => 0xFF), |
| 63 | + "firebrick" => array("red" => 0xB2, "green" => 0x22, "blue" => 0x22), |
| 64 | + "floralwhite" => array("red" => 0xFF, "green" => 0xFA, "blue" => 0xF0), |
| 65 | + "forestgreen" => array("red" => 0x22, "green" => 0x8B, "blue" => 0x22), |
| 66 | + "gainsboro" => array("red" => 0xDC, "green" => 0xDC, "blue" => 0xDC), |
| 67 | + "ghostwhite" => array("red" => 0xF8, "green" => 0xF8, "blue" => 0xFF), |
| 68 | + "gold" => array("red" => 0xFF, "green" => 0xD7, "blue" => 0x00), |
| 69 | + "goldenrod" => array("red" => 0xDA, "green" => 0xA5, "blue" => 0x20), |
| 70 | + "greenyellow" => array("red" => 0xAD, "green" => 0xFF, "blue" => 0x2F), |
| 71 | + "honeydew" => array("red" => 0xF0, "green" => 0xFF, "blue" => 0xF0), |
| 72 | + "hotpink" => array("red" => 0xFF, "green" => 0x69, "blue" => 0xB4), |
| 73 | + "indianred" => array("red" => 0xCD, "green" => 0x5C, "blue" => 0x5C), |
| 74 | + "indigo" => array("red" => 0x4B, "green" => 0x00, "blue" => 0x82), |
| 75 | + "ivory" => array("red" => 0xFF, "green" => 0xFF, "blue" => 0xF0), |
| 76 | + "khaki" => array("red" => 0xF0, "green" => 0xE6, "blue" => 0x8C), |
| 77 | + "lavender" => array("red" => 0xE6, "green" => 0xE6, "blue" => 0xFA), |
| 78 | + "lavenderblush" => array("red" => 0xFF, "green" => 0xF0, "blue" => 0xF5), |
| 79 | + "lawngreen" => array("red" => 0x7C, "green" => 0xFC, "blue" => 0x00), |
| 80 | + "lemonchiffon" => array("red" => 0xFF, "green" => 0xFA, "blue" => 0xCD), |
| 81 | + "lightblue" => array("red" => 0xAD, "green" => 0xD8, "blue" => 0xE6), |
| 82 | + "lightcoral" => array("red" => 0xF0, "green" => 0x80, "blue" => 0x80), |
| 83 | + "lightcyan" => array("red" => 0xE0, "green" => 0xFF, "blue" => 0xFF), |
| 84 | + "lightgoldenrodyellow" => array("red" => 0xFA, "green" => 0xFA, "blue" => 0xD2), |
| 85 | + "lightgreen" => array("red" => 0x90, "green" => 0xEE, "blue" => 0x90), |
| 86 | + "lightgrey" => array("red" => 0xD3, "green" => 0xD3, "blue" => 0xD3), |
| 87 | + "lightpink" => array("red" => 0xFF, "green" => 0xB6, "blue" => 0xC1), |
| 88 | + "lightsalmon" => array("red" => 0xFF, "green" => 0xA0, "blue" => 0x7A), |
| 89 | + "lightseagreen" => array("red" => 0x20, "green" => 0xB2, "blue" => 0xAA), |
| 90 | + "lightskyblue" => array("red" => 0x87, "green" => 0xCE, "blue" => 0xFA), |
| 91 | + "lightslategray" => array("red" => 0x77, "green" => 0x88, "blue" => 0x99), |
| 92 | + "lightsteelblue" => array("red" => 0xB0, "green" => 0xC4, "blue" => 0xDE), |
| 93 | + "lightyellow" => array("red" => 0xFF, "green" => 0xFF, "blue" => 0xE0), |
| 94 | + "limegreen" => array("red" => 0x32, "green" => 0xCD, "blue" => 0x32), |
| 95 | + "linen" => array("red" => 0xFA, "green" => 0xF0, "blue" => 0xE6), |
| 96 | + "mediumaquamarine" => array("red" => 0x66, "green" => 0xCD, "blue" => 0xAA), |
| 97 | + "mediumblue" => array("red" => 0x00, "green" => 0x00, "blue" => 0xCD), |
| 98 | + "mediumorchid" => array("red" => 0xBA, "green" => 0x55, "blue" => 0xD3), |
| 99 | + "mediumpurple" => array("red" => 0x93, "green" => 0x70, "blue" => 0xD0), |
| 100 | + "mediumseagreen" => array("red" => 0x3C, "green" => 0xB3, "blue" => 0x71), |
| 101 | + "mediumslateblue" => array("red" => 0x7B, "green" => 0x68, "blue" => 0xEE), |
| 102 | + "mediumspringgreen" => array("red" => 0x00, "green" => 0xFA, "blue" => 0x9A), |
| 103 | + "mediumturquoise" => array("red" => 0x48, "green" => 0xD1, "blue" => 0xCC), |
| 104 | + "mediumvioletred" => array("red" => 0xC7, "green" => 0x15, "blue" => 0x85), |
| 105 | + "midnightblue" => array("red" => 0x19, "green" => 0x19, "blue" => 0x70), |
| 106 | + "mintcream" => array("red" => 0xF5, "green" => 0xFF, "blue" => 0xFA), |
| 107 | + "mistyrose" => array("red" => 0xFF, "green" => 0xE4, "blue" => 0xE1), |
| 108 | + "moccasin" => array("red" => 0xFF, "green" => 0xE4, "blue" => 0xB5), |
| 109 | + "navajowhite" => array("red" => 0xFF, "green" => 0xDE, "blue" => 0xAD), |
| 110 | + "oldlace" => array("red" => 0xFD, "green" => 0xF5, "blue" => 0xE6), |
| 111 | + "olivedrab" => array("red" => 0x6B, "green" => 0x8E, "blue" => 0x23), |
| 112 | + "orange" => array("red" => 0xFF, "green" => 0xA5, "blue" => 0x00), |
| 113 | + "orangered" => array("red" => 0xFF, "green" => 0x45, "blue" => 0x00), |
| 114 | + "orchid" => array("red" => 0xDA, "green" => 0x70, "blue" => 0xD6), |
| 115 | + "palegoldenrod" => array("red" => 0xEE, "green" => 0xE8, "blue" => 0xAA), |
| 116 | + "palegreen" => array("red" => 0x98, "green" => 0xFB, "blue" => 0x98), |
| 117 | + "paleturquoise" => array("red" => 0xAF, "green" => 0xEE, "blue" => 0xEE), |
| 118 | + "palevioletred" => array("red" => 0xDB, "green" => 0x70, "blue" => 0x93), |
| 119 | + "papayawhip" => array("red" => 0xFF, "green" => 0xEF, "blue" => 0xD5), |
| 120 | + "peachpuff" => array("red" => 0xFF, "green" => 0xDA, "blue" => 0xB9), |
| 121 | + "peru" => array("red" => 0xCD, "green" => 0x85, "blue" => 0x3F), |
| 122 | + "pink" => array("red" => 0xFF, "green" => 0xC0, "blue" => 0xCB), |
| 123 | + "plum" => array("red" => 0xDD, "green" => 0xA0, "blue" => 0xDD), |
| 124 | + "powderblue" => array("red" => 0xB0, "green" => 0xE0, "blue" => 0xE6), |
| 125 | + "rosybrown" => array("red" => 0xBC, "green" => 0x8F, "blue" => 0x8F), |
| 126 | + "royalblue" => array("red" => 0x41, "green" => 0x69, "blue" => 0xE1), |
| 127 | + "saddlebrown" => array("red" => 0x8B, "green" => 0x45, "blue" => 0x13), |
| 128 | + "salmon" => array("red" => 0xFA, "green" => 0x80, "blue" => 0x72), |
| 129 | + "sandybrown" => array("red" => 0xF4, "green" => 0xA4, "blue" => 0x60), |
| 130 | + "seagreen" => array("red" => 0x2E, "green" => 0x8B, "blue" => 0x57), |
| 131 | + "seashell" => array("red" => 0xFF, "green" => 0xF5, "blue" => 0xEE), |
| 132 | + "sienna" => array("red" => 0xA0, "green" => 0x52, "blue" => 0x2D), |
| 133 | + "skyblue" => array("red" => 0x87, "green" => 0xCE, "blue" => 0xEB), |
| 134 | + "slateblue" => array("red" => 0x6A, "green" => 0x5A, "blue" => 0xCD), |
| 135 | + "slategray" => array("red" => 0x70, "green" => 0x80, "blue" => 0x90), |
| 136 | + "snow" => array("red" => 0xFF, "green" => 0xFA, "blue" => 0xFA), |
| 137 | + "springgreen" => array("red" => 0x00, "green" => 0xFF, "blue" => 0x7F), |
| 138 | + "steelblue" => array("red" => 0x46, "green" => 0x82, "blue" => 0xB4), |
| 139 | + "tan" => array("red" => 0xD2, "green" => 0xB4, "blue" => 0x8C), |
| 140 | + "thistle" => array("red" => 0xD8, "green" => 0xBF, "blue" => 0xD8), |
| 141 | + "tomato" => array("red" => 0xFF, "green" => 0x63, "blue" => 0x47), |
| 142 | + "turquoise" => array("red" => 0x40, "green" => 0xE0, "blue" => 0xD0), |
| 143 | + "violet" => array("red" => 0xEE, "green" => 0x82, "blue" => 0xEE), |
| 144 | + "wheat" => array("red" => 0xF5, "green" => 0xDE, "blue" => 0xB3), |
| 145 | + "whitesmoke" => array("red" => 0xF5, "green" => 0xF5, "blue" => 0xF5), |
| 146 | + "yellowgreen" => array("red" => 0x9A, "green" => 0xCD, "blue" => 0x32) |
| 147 | + ); |
| 148 | + |
| 149 | + public function __construct($aColor) { |
8 | 150 | parent::__construct(implode('', array_keys($aColor)), $aColor);
|
9 | 151 | }
|
10 | 152 |
|
|
0 commit comments