<?php
header ( 'Content-Type: image/png' ) ;
"pink" => "FFC0CB" ,
"lightpink" => "FFB6C1" ,
"hotpink" => "FF69B4" ,
"deeppink" => "FF1493" ,
"palevioletred" => "DB7093" ,
"mediumvioletred" => "C71585" ,
"lightsalmon" => "FFA07A" ,
"salmon" => "FA8072" ,
"darksalmon" => "E9967A" ,
"lightcoral" => "F08080" ,
"indianred" => "CD5C5C" ,
"crimson" => "DC143C" ,
"firebrick" => "B22222" ,
"darkred" => "8B0000" ,
"red" => "FF0000" ,
"orangered" => "FF4500" ,
"tomato" => "FF6347" ,
"coral" => "FF7F50" ,
"darkorange" => "FF8C00" ,
"orange" => "FFA500" ,
"gold" => "FFD700" ,
"yellow" => "FFFF00" ,
"lightyellow" => "FFFFE0" ,
"lemonchiffon" => "FFFACD" ,
"lightgoldenrodyellow" => "FAFAD2" ,
"papayawhip" => "FFEFD5" ,
"moccasin" => "FFE4B5" ,
"peachpuff" => "FFDAB9" ,
"palegoldenrod" => "EEE8AA" ,
"khaki" => "F0E68C" ,
"darkkhaki" => "BDB76B" ,
"cornsilk" => "FFF8DC" ,
"blanchedalmond" => "FFEBCD" ,
"bisque" => "FFE4C4" ,
"navajowhite" => "FFDEAD" ,
"wheat" => "F5DEB3" ,
"burlywood" => "DEB887" ,
"tan" => "D2B48C" ,
"rosybrown" => "BC8F8F" ,
"sandybrown" => "F4A460" ,
"goldenrod" => "DAA520" ,
"darkgoldenrod" => "B8860B" ,
"peru" => "CD853F" ,
"chocolate" => "D2691E" ,
"saddlebrown" => "8B4513" ,
"sienna" => "A0522D" ,
"brown" => "A52A2A" ,
"maroon" => "800000" ,
"darkolivegreen" => "556B2F" ,
"olive" => "808000" ,
"olivedrab" => "6B8E23" ,
"yellowgreen" => "9ACD32" ,
"limegreen" => "32CD32" ,
"lime" => "00FF00" ,
"lawngreen" => "7CFC00" ,
"chartreuse" => "7FFF00" ,
"greenyellow" => "ADFF2F" ,
"springgreen" => "00FF7F" ,
"mediumspringgreen" => "00FA9A" ,
"lightgreen" => "90EE90" ,
"palegreen" => "98FB98" ,
"darkseagreen" => "8FBC8F" ,
"mediumseagreen" => "3CB371" ,
"seagreen" => "2E8B57" ,
"forestgreen" => "228B22" ,
"green" => "008000" ,
"darkgreen" => "006400" ,
"mediumaquamarine" => "66CDAA" ,
"aqua" => "00FFFF" ,
"cyan" => "00FFFF" ,
"lightcyan" => "E0FFFF" ,
"paleturquoise" => "AFEEEE" ,
"aquamarine" => "7FFFD4" ,
"turquoise" => "40E0D0" ,
"mediumturquoise" => "48D1CC" ,
"darkturquoise" => "00CED1" ,
"lightseagreen" => "20B2AA" ,
"cadetblue" => "5F9EA0" ,
"darkcyan" => "008B8B" ,
"teal" => "008080" ,
"lightsteelblue" => "B0C4DE" ,
"powderblue" => "B0E0E6" ,
"lightblue" => "ADD8E6" ,
"skyblue" => "87CEEB" ,
"lightskyblue" => "87CEFA" ,
"deepskyblue" => "00BFFF" ,
"dodgerblue" => "1E90FF" ,
"cornflowerblue" => "6495ED" ,
"steelblue" => "4682B4" ,
"royalblue" => "4169E1" ,
"blue" => "0000FF" ,
"mediumblue" => "0000CD" ,
"darkblue" => "00008B" ,
"navy" => "000080" ,
"midnightblue" => "191970" ,
"lavender" => "E6E6FA" ,
"thistle" => "D8BFD8" ,
"plum" => "DDA0DD" ,
"violet" => "EE82EE" ,
"orchid" => "DA70D6" ,
"fuchsia" => "FF00FF" ,
"magenta" => "FF00FF" ,
"mediumorchid" => "BA55D3" ,
"mediumpurple" => "9370DB" ,
"blueviolet" => "8A2BE2" ,
"darkviolet" => "9400D3" ,
"darkorchid" => "9932CC" ,
"darkmagenta" => "8B008B" ,
"purple" => "800080" ,
"indigo" => "4B0082" ,
"darkslateblue" => "483D8B" ,
"slateblue" => "6A5ACD" ,
"mediumslateblue" => "7B68EE" ,
"white" => "FFFFFF" ,
"snow" => "FFFAFA" ,
"honeydew" => "F0FFF0" ,
"mintcream" => "F5FFFA" ,
"azure" => "F0FFFF" ,
"aliceblue" => "F0F8FF" ,
"ghostwhite" => "F8F8FF" ,
"whitesmoke" => "F5F5F5" ,
"seashell" => "FFF5EE" ,
"beige" => "F5F5DC" ,
"oldlace" => "FDF5E6" ,
"floralwhite" => "FFFAF0" ,
"ivory" => "FFFFF0" ,
"antiquewhite" => "FAEBD7" ,
"linen" => "FAF0E6" ,
"lavenderblush" => "FFF0F5" ,
"mistyrose" => "FFE4E1" ,
"gainsboro" => "DCDCDC" ,
"lightgray" => "D3D3D3" ,
"lightgrey" => "D3D3D3" ,
"silver" => "C0C0C0" ,
"darkgray" => "A9A9A9" ,
"darkgrey" => "A9A9A9" ,
"gray" => "808080" ,
"grey" => "808080" ,
"dimgray" => "696969" ,
"dimgrey" => "696969" ,
"lightslategray" => "778899" ,
"lightslategrey" => "778899" ,
"slategray" => "708090" ,
"slategrey" => "708090" ,
"darkslategray" => "2F4F4F" ,
"darkslategrey" => "2F4F4F" ,
"black" => "000000"
) ;
function rgbFromHex( $hexValue ) {
//$hexValue = str_replace('#', '', $hexValue);
//SILLY ME WAS EXPECTING # TO BE PASSED. BUT USING $_GET[] VARIABLES THAT ISN'T POSSIBLE... DAMMIT.
if ( strlen ( $hexValue ) == 3 ) { //CHECK FOR SHORTHAND } else { //FUNCTION FOR NORMAL 6 DIGIT VALUES
}
return $rgb ;
}
function rgbFromName( $name ) {
global $colornames ;
if ( $colornames [ $name ] ) { return rgbFromHex( $colornames [ $name ] ) ; }
else { return null ; }
}
function createSwatch( $colors ) {
$colWidth = 200 / count ( $colArray ) ; $x = 0 ;
foreach ( $colArray as $col ) {
if ( ! $rgb ) { $rgb = rgbFromHex( $col ) ; } //DON'T DO ANYTHING IF A COLOR ISN'T PROVIDED
$color = imagecolorallocate ( $im , $rgb [ 0 ] , $rgb [ 1 ] , $rgb [ 2 ] ) ; //FIND A BETTER WAY TO DO THIS.
$x += $colWidth ;
}
}
createSwatch( 'ff0000,00ff00,00f,ff0,0ff,red,green,blue,black,yellow,orange,PURPLE,WhiteSmoke' )
?>
PD9waHAKaGVhZGVyKCdDb250ZW50LVR5cGU6IGltYWdlL3BuZycpOwoKJGNvbG9ybmFtZXMgPSBhcnJheSgKICAgICJwaW5rIiA9PiAiRkZDMENCIiwKCSJsaWdodHBpbmsiID0+ICJGRkI2QzEiLAoJImhvdHBpbmsiID0+ICJGRjY5QjQiLAoJImRlZXBwaW5rIiA9PiAiRkYxNDkzIiwKCSJwYWxldmlvbGV0cmVkIiA9PiAiREI3MDkzIiwKCSJtZWRpdW12aW9sZXRyZWQiID0+ICJDNzE1ODUiLAoJImxpZ2h0c2FsbW9uIiA9PiAiRkZBMDdBIiwKCSJzYWxtb24iID0+ICJGQTgwNzIiLAoJImRhcmtzYWxtb24iID0+ICJFOTk2N0EiLAoJImxpZ2h0Y29yYWwiID0+ICJGMDgwODAiLAoJImluZGlhbnJlZCIgPT4gIkNENUM1QyIsCgkiY3JpbXNvbiIgPT4gIkRDMTQzQyIsCgkiZmlyZWJyaWNrIiA9PiAiQjIyMjIyIiwKCSJkYXJrcmVkIiA9PiAiOEIwMDAwIiwKCSJyZWQiID0+ICJGRjAwMDAiLAoJIm9yYW5nZXJlZCIgPT4gIkZGNDUwMCIsCgkidG9tYXRvIiA9PiAiRkY2MzQ3IiwKCSJjb3JhbCIgPT4gIkZGN0Y1MCIsCgkiZGFya29yYW5nZSIgPT4gIkZGOEMwMCIsCgkib3JhbmdlIiA9PiAiRkZBNTAwIiwKCSJnb2xkIiA9PiAiRkZENzAwIiwKCSJ5ZWxsb3ciID0+ICJGRkZGMDAiLAoJImxpZ2h0eWVsbG93IiA9PiAiRkZGRkUwIiwKCSJsZW1vbmNoaWZmb24iID0+ICJGRkZBQ0QiLAoJImxpZ2h0Z29sZGVucm9keWVsbG93IiA9PiAiRkFGQUQyIiwKCSJwYXBheWF3aGlwIiA9PiAiRkZFRkQ1IiwKCSJtb2NjYXNpbiIgPT4gIkZGRTRCNSIsCgkicGVhY2hwdWZmIiA9PiAiRkZEQUI5IiwKCSJwYWxlZ29sZGVucm9kIiA9PiAiRUVFOEFBIiwKCSJraGFraSIgPT4gIkYwRTY4QyIsCgkiZGFya2toYWtpIiA9PiAiQkRCNzZCIiwKCSJjb3Juc2lsayIgPT4gIkZGRjhEQyIsCgkiYmxhbmNoZWRhbG1vbmQiID0+ICJGRkVCQ0QiLAoJImJpc3F1ZSIgPT4gIkZGRTRDNCIsCgkibmF2YWpvd2hpdGUiID0+ICJGRkRFQUQiLAoJIndoZWF0IiA9PiAiRjVERUIzIiwKCSJidXJseXdvb2QiID0+ICJERUI4ODciLAoJInRhbiIgPT4gIkQyQjQ4QyIsCgkicm9zeWJyb3duIiA9PiAiQkM4RjhGIiwKCSJzYW5keWJyb3duIiA9PiAiRjRBNDYwIiwKCSJnb2xkZW5yb2QiID0+ICJEQUE1MjAiLAoJImRhcmtnb2xkZW5yb2QiID0+ICJCODg2MEIiLAoJInBlcnUiID0+ICJDRDg1M0YiLAoJImNob2NvbGF0ZSIgPT4gIkQyNjkxRSIsCgkic2FkZGxlYnJvd24iID0+ICI4QjQ1MTMiLAoJInNpZW5uYSIgPT4gIkEwNTIyRCIsCgkiYnJvd24iID0+ICJBNTJBMkEiLAoJIm1hcm9vbiIgPT4gIjgwMDAwMCIsCgkiZGFya29saXZlZ3JlZW4iID0+ICI1NTZCMkYiLAoJIm9saXZlIiA9PiAiODA4MDAwIiwKCSJvbGl2ZWRyYWIiID0+ICI2QjhFMjMiLAoJInllbGxvd2dyZWVuIiA9PiAiOUFDRDMyIiwKCSJsaW1lZ3JlZW4iID0+ICIzMkNEMzIiLAoJImxpbWUiID0+ICIwMEZGMDAiLAoJImxhd25ncmVlbiIgPT4gIjdDRkMwMCIsCgkiY2hhcnRyZXVzZSIgPT4gIjdGRkYwMCIsCgkiZ3JlZW55ZWxsb3ciID0+ICJBREZGMkYiLAoJInNwcmluZ2dyZWVuIiA9PiAiMDBGRjdGIiwKCSJtZWRpdW1zcHJpbmdncmVlbiIgPT4gIjAwRkE5QSIsCgkibGlnaHRncmVlbiIgPT4gIjkwRUU5MCIsCgkicGFsZWdyZWVuIiA9PiAiOThGQjk4IiwKCSJkYXJrc2VhZ3JlZW4iID0+ICI4RkJDOEYiLAoJIm1lZGl1bXNlYWdyZWVuIiA9PiAiM0NCMzcxIiwKCSJzZWFncmVlbiIgPT4gIjJFOEI1NyIsCgkiZm9yZXN0Z3JlZW4iID0+ICIyMjhCMjIiLAoJImdyZWVuIiA9PiAiMDA4MDAwIiwKCSJkYXJrZ3JlZW4iID0+ICIwMDY0MDAiLAoJIm1lZGl1bWFxdWFtYXJpbmUiID0+ICI2NkNEQUEiLAoJImFxdWEiID0+ICIwMEZGRkYiLAoJImN5YW4iID0+ICIwMEZGRkYiLAoJImxpZ2h0Y3lhbiIgPT4gIkUwRkZGRiIsCgkicGFsZXR1cnF1b2lzZSIgPT4gIkFGRUVFRSIsCgkiYXF1YW1hcmluZSIgPT4gIjdGRkZENCIsCgkidHVycXVvaXNlIiA9PiAiNDBFMEQwIiwKCSJtZWRpdW10dXJxdW9pc2UiID0+ICI0OEQxQ0MiLAoJImRhcmt0dXJxdW9pc2UiID0+ICIwMENFRDEiLAoJImxpZ2h0c2VhZ3JlZW4iID0+ICIyMEIyQUEiLAoJImNhZGV0Ymx1ZSIgPT4gIjVGOUVBMCIsCgkiZGFya2N5YW4iID0+ICIwMDhCOEIiLAoJInRlYWwiID0+ICIwMDgwODAiLAoJImxpZ2h0c3RlZWxibHVlIiA9PiAiQjBDNERFIiwKCSJwb3dkZXJibHVlIiA9PiAiQjBFMEU2IiwKCSJsaWdodGJsdWUiID0+ICJBREQ4RTYiLAoJInNreWJsdWUiID0+ICI4N0NFRUIiLAoJImxpZ2h0c2t5Ymx1ZSIgPT4gIjg3Q0VGQSIsCgkiZGVlcHNreWJsdWUiID0+ICIwMEJGRkYiLAoJImRvZGdlcmJsdWUiID0+ICIxRTkwRkYiLAoJImNvcm5mbG93ZXJibHVlIiA9PiAiNjQ5NUVEIiwKCSJzdGVlbGJsdWUiID0+ICI0NjgyQjQiLAoJInJveWFsYmx1ZSIgPT4gIjQxNjlFMSIsCgkiYmx1ZSIgPT4gIjAwMDBGRiIsCgkibWVkaXVtYmx1ZSIgPT4gIjAwMDBDRCIsCgkiZGFya2JsdWUiID0+ICIwMDAwOEIiLAoJIm5hdnkiID0+ICIwMDAwODAiLAoJIm1pZG5pZ2h0Ymx1ZSIgPT4gIjE5MTk3MCIsCgkibGF2ZW5kZXIiID0+ICJFNkU2RkEiLAoJInRoaXN0bGUiID0+ICJEOEJGRDgiLAoJInBsdW0iID0+ICJEREEwREQiLAoJInZpb2xldCIgPT4gIkVFODJFRSIsCgkib3JjaGlkIiA9PiAiREE3MEQ2IiwKCSJmdWNoc2lhIiA9PiAiRkYwMEZGIiwKCSJtYWdlbnRhIiA9PiAiRkYwMEZGIiwKCSJtZWRpdW1vcmNoaWQiID0+ICJCQTU1RDMiLAoJIm1lZGl1bXB1cnBsZSIgPT4gIjkzNzBEQiIsCgkiYmx1ZXZpb2xldCIgPT4gIjhBMkJFMiIsCgkiZGFya3Zpb2xldCIgPT4gIjk0MDBEMyIsCgkiZGFya29yY2hpZCIgPT4gIjk5MzJDQyIsCgkiZGFya21hZ2VudGEiID0+ICI4QjAwOEIiLAoJInB1cnBsZSIgPT4gIjgwMDA4MCIsCgkiaW5kaWdvIiA9PiAiNEIwMDgyIiwKCSJkYXJrc2xhdGVibHVlIiA9PiAiNDgzRDhCIiwKCSJzbGF0ZWJsdWUiID0+ICI2QTVBQ0QiLAoJIm1lZGl1bXNsYXRlYmx1ZSIgPT4gIjdCNjhFRSIsCgkid2hpdGUiID0+ICJGRkZGRkYiLAoJInNub3ciID0+ICJGRkZBRkEiLAoJImhvbmV5ZGV3IiA9PiAiRjBGRkYwIiwKCSJtaW50Y3JlYW0iID0+ICJGNUZGRkEiLAoJImF6dXJlIiA9PiAiRjBGRkZGIiwKCSJhbGljZWJsdWUiID0+ICJGMEY4RkYiLAoJImdob3N0d2hpdGUiID0+ICJGOEY4RkYiLAoJIndoaXRlc21va2UiID0+ICJGNUY1RjUiLAoJInNlYXNoZWxsIiA9PiAiRkZGNUVFIiwKCSJiZWlnZSIgPT4gIkY1RjVEQyIsCgkib2xkbGFjZSIgPT4gIkZERjVFNiIsCgkiZmxvcmFsd2hpdGUiID0+ICJGRkZBRjAiLAoJIml2b3J5IiA9PiAiRkZGRkYwIiwKCSJhbnRpcXVld2hpdGUiID0+ICJGQUVCRDciLAoJImxpbmVuIiA9PiAiRkFGMEU2IiwKCSJsYXZlbmRlcmJsdXNoIiA9PiAiRkZGMEY1IiwKCSJtaXN0eXJvc2UiID0+ICJGRkU0RTEiLAoJImdhaW5zYm9ybyIgPT4gIkRDRENEQyIsCgkibGlnaHRncmF5IiA9PiAiRDNEM0QzIiwKCSJsaWdodGdyZXkiID0+ICJEM0QzRDMiLAoJInNpbHZlciIgPT4gIkMwQzBDMCIsCgkiZGFya2dyYXkiID0+ICJBOUE5QTkiLAoJImRhcmtncmV5IiA9PiAiQTlBOUE5IiwKCSJncmF5IiA9PiAiODA4MDgwIiwKCSJncmV5IiA9PiAiODA4MDgwIiwKCSJkaW1ncmF5IiA9PiAiNjk2OTY5IiwKCSJkaW1ncmV5IiA9PiAiNjk2OTY5IiwKCSJsaWdodHNsYXRlZ3JheSIgPT4gIjc3ODg5OSIsCgkibGlnaHRzbGF0ZWdyZXkiID0+ICI3Nzg4OTkiLAoJInNsYXRlZ3JheSIgPT4gIjcwODA5MCIsCgkic2xhdGVncmV5IiA9PiAiNzA4MDkwIiwKCSJkYXJrc2xhdGVncmF5IiA9PiAiMkY0RjRGIiwKCSJkYXJrc2xhdGVncmV5IiA9PiAiMkY0RjRGIiwKCSJibGFjayIgPT4gIjAwMDAwMCIKKTsKCmZ1bmN0aW9uIHJnYkZyb21IZXgoJGhleFZhbHVlKSB7CiAKICAgICAgICAvLyRoZXhWYWx1ZSA9IHN0cl9yZXBsYWNlKCcjJywgJycsICRoZXhWYWx1ZSk7CiAgICAgICAgLy9TSUxMWSBNRSBXQVMgRVhQRUNUSU5HICMgVE8gQkUgUEFTU0VELiBCVVQgVVNJTkcgJF9HRVRbXSBWQVJJQUJMRVMgVEhBVCBJU04nVCBQT1NTSUJMRS4uLiBEQU1NSVQuCiAgICAgICAKICAgICAgICBpZiAoc3RybGVuKCRoZXhWYWx1ZSkgPT0gMykgeyAvL0NIRUNLIEZPUiBTSE9SVEhBTkQKICAgICAgICAgICAgICAgICRyID0gaGV4ZGVjKHN1YnN0cigkaGV4VmFsdWUsIDAsIDEpIC4gc3Vic3RyKCRoZXhWYWx1ZSwgMCwgMSkpOwogICAgICAgICAgICAgICAgJGcgPSBoZXhkZWMoc3Vic3RyKCRoZXhWYWx1ZSwgMSwgMSkgLiBzdWJzdHIoJGhleFZhbHVlLCAxLCAxKSk7CiAgICAgICAgICAgICAgICAkYiA9IGhleGRlYyhzdWJzdHIoJGhleFZhbHVlLCAyLCAxKSAuIHN1YnN0cigkaGV4VmFsdWUsIDIsIDEpKTsKICAgICAgICB9IGVsc2UgeyAvL0ZVTkNUSU9OIEZPUiBOT1JNQUwgNiBESUdJVCBWQUxVRVMKICAgICAgICAgICAgICAgICRyID0gaGV4ZGVjKHN1YnN0cigkaGV4VmFsdWUsIDAsIDIpKTsKICAgICAgICAgICAgICAgICRnID0gaGV4ZGVjKHN1YnN0cigkaGV4VmFsdWUsIDIsIDIpKTsKICAgICAgICAgICAgICAgICRiID0gaGV4ZGVjKHN1YnN0cigkaGV4VmFsdWUsIDQsIDIpKTsKICAgICAgICB9CiAgICAgICAgJHJnYiA9IGFycmF5KCRyLCRnLCRiKTsKICAgICAgIAogICAgICAgIHJldHVybiAkcmdiOwp9CmZ1bmN0aW9uIHJnYkZyb21OYW1lKCRuYW1lKXsKCWdsb2JhbCAkY29sb3JuYW1lczsKCWlmICgkY29sb3JuYW1lc1skbmFtZV0pe3JldHVybiByZ2JGcm9tSGV4KCRjb2xvcm5hbWVzWyRuYW1lXSk7fQoJZWxzZSB7cmV0dXJuIG51bGw7fQp9CgpmdW5jdGlvbiBjcmVhdGVTd2F0Y2goJGNvbG9ycyl7CgkkY29sQXJyYXkgPSBleHBsb2RlKCIsIiwgJGNvbG9ycyk7CgkkY29sV2lkdGggPSAyMDAgLyBjb3VudCgkY29sQXJyYXkpOwoJJGltID0gaW1hZ2VjcmVhdGUoMjAwLCA0MCk7CgkkeCA9IDA7CgkKCWZvcmVhY2goJGNvbEFycmF5IGFzICRjb2wpewoJCSRyZ2IgPSByZ2JGcm9tTmFtZShzdHJ0b2xvd2VyKCRjb2wpKTsKCQlpZiAoISRyZ2IpIHskcmdiID0gcmdiRnJvbUhleCgkY29sKTt9IC8vRE9OJ1QgRE8gQU5ZVEhJTkcgSUYgQSBDT0xPUiBJU04nVCBQUk9WSURFRAoJCSRjb2xvciA9IGltYWdlY29sb3JhbGxvY2F0ZSgkaW0sICRyZ2JbMF0sICRyZ2JbMV0sICRyZ2JbMl0pOyAvL0ZJTkQgQSBCRVRURVIgV0FZIFRPIERPIFRISVMuCgkJCgkJaW1hZ2VmaWxsZWRyZWN0YW5nbGUoJGltLCAkeCwgMCwgJHggKyAkY29sV2lkdGgsIDQwLCAkY29sb3IpOwoJCSR4ICs9ICRjb2xXaWR0aDsKCX0KICAgICAKICAgIHJldHVybiBpbWFnZXBuZygkaW0pOwp9CgpjcmVhdGVTd2F0Y2goJ2ZmMDAwMCwwMGZmMDAsMDBmLGZmMCwwZmYscmVkLGdyZWVuLGJsdWUsYmxhY2sseWVsbG93LG9yYW5nZSxQVVJQTEUsV2hpdGVTbW9rZScpCj8+