Color : phpstan l9
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
/** DomFramework
|
/**
|
||||||
|
* DomFramework
|
||||||
* @package domframework
|
* @package domframework
|
||||||
* @author Dominique Fournier <dominique@fournier38.fr>
|
* @author Dominique Fournier <dominique@fournier38.fr>
|
||||||
* @license BSD
|
* @license BSD
|
||||||
@@ -8,12 +9,15 @@
|
|||||||
|
|
||||||
namespace Domframework;
|
namespace Domframework;
|
||||||
|
|
||||||
/** Convert the name of colors to RGB
|
/**
|
||||||
|
* Convert the name of colors to RGB
|
||||||
*/
|
*/
|
||||||
class Color
|
class Color
|
||||||
{
|
{
|
||||||
/** The color list
|
/**
|
||||||
|
* The color list
|
||||||
* From http://www.rapidtables.com/web/color/index.htm
|
* From http://www.rapidtables.com/web/color/index.htm
|
||||||
|
* @var array<string, array<int>>
|
||||||
*/
|
*/
|
||||||
public $colorList = array(
|
public $colorList = array(
|
||||||
// Black
|
// Black
|
||||||
@@ -52,7 +56,6 @@ class Color
|
|||||||
"cornsilk" => array(255, 248, 220),
|
"cornsilk" => array(255, 248, 220),
|
||||||
"blanchedalmond" => array(255, 235, 205),
|
"blanchedalmond" => array(255, 235, 205),
|
||||||
"bisque" => array(255, 228, 196),
|
"bisque" => array(255, 228, 196),
|
||||||
"navajowhite" => array(255, 222, 173),
|
|
||||||
"wheat" => array(245, 222, 179),
|
"wheat" => array(245, 222, 179),
|
||||||
"burlywood" => array(222, 184, 135),
|
"burlywood" => array(222, 184, 135),
|
||||||
"tan" => array(210, 180, 140),
|
"tan" => array(210, 180, 140),
|
||||||
@@ -64,7 +67,6 @@ class Color
|
|||||||
"saddlebrown" => array(139, 69, 19),
|
"saddlebrown" => array(139, 69, 19),
|
||||||
"sienna" => array(160, 82, 45),
|
"sienna" => array(160, 82, 45),
|
||||||
"brown" => array(165, 42, 42),
|
"brown" => array(165, 42, 42),
|
||||||
"maroon" => array(128, 0, 0),
|
|
||||||
|
|
||||||
// Cyan
|
// Cyan
|
||||||
"lightcyan" => array(224, 255, 255),
|
"lightcyan" => array(224, 255, 255),
|
||||||
@@ -77,22 +79,15 @@ class Color
|
|||||||
"mediumturquoise" => array(72, 209, 204),
|
"mediumturquoise" => array(72, 209, 204),
|
||||||
"darkturquoise" => array(0, 206, 209),
|
"darkturquoise" => array(0, 206, 209),
|
||||||
"lightseagreen" => array(32, 178, 170),
|
"lightseagreen" => array(32, 178, 170),
|
||||||
"cadetblue" => array(95, 158, 160),
|
|
||||||
"darkcyan" => array(0, 139, 139),
|
"darkcyan" => array(0, 139, 139),
|
||||||
"teal" => array(0, 128, 128),
|
"teal" => array(0, 128, 128),
|
||||||
|
|
||||||
// Gold
|
// Gold
|
||||||
"lightgoldenrodyellow" => array(250, 250, 210),
|
|
||||||
"palegoldenrod" => array(238, 232, 170),
|
"palegoldenrod" => array(238, 232, 170),
|
||||||
"khaki" => array(240, 230, 140),
|
"khaki" => array(240, 230, 140),
|
||||||
"goldenrod" => array(218, 165, 32),
|
|
||||||
"gold" => array(255, 215, 0),
|
"gold" => array(255, 215, 0),
|
||||||
"orange" => array(255, 165, 0),
|
"orange" => array(255, 165, 0),
|
||||||
"darkorange" => array(255, 140, 0),
|
"darkorange" => array(255, 140, 0),
|
||||||
"peru" => array(205, 133, 63),
|
|
||||||
"chocolate" => array(210, 105, 30),
|
|
||||||
"saddlebrown" => array(139, 69, 19),
|
|
||||||
"sienna" => array(160, 82, 45),
|
|
||||||
"goldenyellow" => array(255, 223, 0),
|
"goldenyellow" => array(255, 223, 0),
|
||||||
"metallicgold" => array(212, 175, 55),
|
"metallicgold" => array(212, 175, 55),
|
||||||
"oldgold" => array(207, 181, 59),
|
"oldgold" => array(207, 181, 59),
|
||||||
@@ -116,7 +111,6 @@ class Color
|
|||||||
"palegreen" => array(152, 251, 152),
|
"palegreen" => array(152, 251, 152),
|
||||||
"darkseagreen" => array(143, 188, 143),
|
"darkseagreen" => array(143, 188, 143),
|
||||||
"mediumseagreen" => array(60, 179, 113),
|
"mediumseagreen" => array(60, 179, 113),
|
||||||
"lightseagreen" => array(32, 178, 170),
|
|
||||||
"seagreen" => array(46, 139, 87),
|
"seagreen" => array(46, 139, 87),
|
||||||
"olive" => array(128, 128, 0),
|
"olive" => array(128, 128, 0),
|
||||||
"darkolivegreen" => array(85, 107, 47),
|
"darkolivegreen" => array(85, 107, 47),
|
||||||
@@ -126,35 +120,23 @@ class Color
|
|||||||
"gainsboro" => array(220, 220, 220),
|
"gainsboro" => array(220, 220, 220),
|
||||||
"lightgray" => array(211, 211, 211),
|
"lightgray" => array(211, 211, 211),
|
||||||
"lightgrey" => array(211, 211, 211),
|
"lightgrey" => array(211, 211, 211),
|
||||||
"silver" => array(192, 192, 192),
|
|
||||||
"darkgray" => array(169, 169, 169),
|
"darkgray" => array(169, 169, 169),
|
||||||
"darkgrey" => array(169, 169, 169),
|
|
||||||
"gray" => array(128, 128, 128),
|
"gray" => array(128, 128, 128),
|
||||||
"grey" => array(128, 128, 128),
|
|
||||||
"dimgray" => array(105, 105, 105),
|
"dimgray" => array(105, 105, 105),
|
||||||
"dimgrey" => array(105, 105, 105),
|
|
||||||
"lightslategray" => array(119, 136, 153),
|
"lightslategray" => array(119, 136, 153),
|
||||||
"lightslategrey" => array(119, 136, 153),
|
"lightslategrey" => array(119, 136, 153),
|
||||||
"slategray" => array(112, 128, 144),
|
"slategray" => array(112, 128, 144),
|
||||||
"slategrey" => array(112, 128, 144),
|
"slategrey" => array(112, 128, 144),
|
||||||
"darkslategray" => array(47, 79, 79),
|
"darkslategray" => array(47, 79, 79),
|
||||||
"darkslategrey" => array(47, 79, 79),
|
"darkslategrey" => array(47, 79, 79),
|
||||||
"black" => array(0, 0, 0),
|
|
||||||
|
|
||||||
// Maroon
|
// Maroon
|
||||||
"maroon" => array(128, 0, 0),
|
"maroon" => array(128, 0, 0),
|
||||||
"darkred" => array(139, 0, 0),
|
|
||||||
"brown" => array(165, 42, 42),
|
|
||||||
"firebrick" => array(178, 34, 34),
|
|
||||||
"crimson" => array(220, 20, 60),
|
|
||||||
|
|
||||||
// Orange
|
// Orange
|
||||||
"coral" => array(255, 127, 80),
|
"coral" => array(255, 127, 80),
|
||||||
"tomato" => array(255, 99, 71),
|
"tomato" => array(255, 99, 71),
|
||||||
"orangered" => array(255, 69, 0),
|
"orangered" => array(255, 69, 0),
|
||||||
"gold" => array(255, 215, 0),
|
|
||||||
"orange" => array(255, 165, 0),
|
|
||||||
"darkorange" => array(255, 140, 0),
|
|
||||||
|
|
||||||
// Pink
|
// Pink
|
||||||
"pink" => array(255, 192, 203),
|
"pink" => array(255, 192, 203),
|
||||||
@@ -165,7 +147,6 @@ class Color
|
|||||||
"mediumvioletred" => array(199, 21, 133),
|
"mediumvioletred" => array(199, 21, 133),
|
||||||
|
|
||||||
// Purple
|
// Purple
|
||||||
"lavender" => array(230, 230, 250),
|
|
||||||
"thistle" => array(216, 191, 216),
|
"thistle" => array(216, 191, 216),
|
||||||
"plum" => array(221, 160, 221),
|
"plum" => array(221, 160, 221),
|
||||||
"violet" => array(238, 130, 238),
|
"violet" => array(238, 130, 238),
|
||||||
@@ -174,12 +155,10 @@ class Color
|
|||||||
"magenta" => array(255, 0, 255),
|
"magenta" => array(255, 0, 255),
|
||||||
"mediumorchid" => array(186, 85, 211),
|
"mediumorchid" => array(186, 85, 211),
|
||||||
"mediumpurple" => array(147, 112, 219),
|
"mediumpurple" => array(147, 112, 219),
|
||||||
"blueviolet" => array(138, 43, 226),
|
|
||||||
"darkviolet" => array(148, 0, 211),
|
"darkviolet" => array(148, 0, 211),
|
||||||
"darkorchid" => array(153, 50, 204),
|
"darkorchid" => array(153, 50, 204),
|
||||||
"darkmagenta" => array(139, 0, 139),
|
"darkmagenta" => array(139, 0, 139),
|
||||||
"purple" => array(128, 0, 128),
|
"purple" => array(128, 0, 128),
|
||||||
"indigo" => array(75, 0, 130),
|
|
||||||
|
|
||||||
// Red
|
// Red
|
||||||
"lightsalmon" => array(255, 160, 122),
|
"lightsalmon" => array(255, 160, 122),
|
||||||
@@ -191,10 +170,6 @@ class Color
|
|||||||
"firebrick" => array(178, 34, 34),
|
"firebrick" => array(178, 34, 34),
|
||||||
"red" => array(255, 0, 0),
|
"red" => array(255, 0, 0),
|
||||||
"darkred" => array(139, 0, 0),
|
"darkred" => array(139, 0, 0),
|
||||||
"maroon" => array(128, 0, 0),
|
|
||||||
"tomato" => array(255, 99, 71),
|
|
||||||
"orangered" => array(255, 69, 0),
|
|
||||||
"palevioletred" => array(219, 112, 147),
|
|
||||||
|
|
||||||
// White
|
// White
|
||||||
"white" => array(255, 255, 255),
|
"white" => array(255, 255, 255),
|
||||||
@@ -202,7 +177,6 @@ class Color
|
|||||||
"honeydew" => array(240, 255, 240),
|
"honeydew" => array(240, 255, 240),
|
||||||
"mintcream" => array(245, 255, 250),
|
"mintcream" => array(245, 255, 250),
|
||||||
"azure" => array(240, 255, 255),
|
"azure" => array(240, 255, 255),
|
||||||
"aliceblue" => array(240, 248, 255),
|
|
||||||
"ghostwhite" => array(248, 248, 255),
|
"ghostwhite" => array(248, 248, 255),
|
||||||
"whitesmoke" => array(245, 245, 245),
|
"whitesmoke" => array(245, 245, 245),
|
||||||
"seashell" => array(255, 245, 238),
|
"seashell" => array(255, 245, 238),
|
||||||
@@ -223,13 +197,7 @@ class Color
|
|||||||
"papayawhip" => array(255, 239, 213),
|
"papayawhip" => array(255, 239, 213),
|
||||||
"moccasin" => array(255, 228, 181),
|
"moccasin" => array(255, 228, 181),
|
||||||
"peachpuff" => array(255, 218, 185),
|
"peachpuff" => array(255, 218, 185),
|
||||||
"palegoldenrod" => array(238, 232, 170),
|
|
||||||
"khaki" => array(240, 230, 140),
|
|
||||||
"darkkhaki" => array(189, 183, 107),
|
"darkkhaki" => array(189, 183, 107),
|
||||||
"yellow" => array(255, 255, 0),
|
|
||||||
"olive" => array(128, 128, 0),
|
|
||||||
"greenyellow" => array(173, 255, 47),
|
|
||||||
"yellowgreen" => array(154, 205, 50),
|
|
||||||
"lightyellow1" => array(255, 255, 204),
|
"lightyellow1" => array(255, 255, 204),
|
||||||
"lightyellow2" => array(255, 255, 153),
|
"lightyellow2" => array(255, 255, 153),
|
||||||
"lightyellow3" => array(255, 255, 102),
|
"lightyellow3" => array(255, 255, 102),
|
||||||
@@ -241,21 +209,25 @@ class Color
|
|||||||
"darkyellow4" => array(51, 51, 0),
|
"darkyellow4" => array(51, 51, 0),
|
||||||
);
|
);
|
||||||
|
|
||||||
/** Return the list of the known colors list
|
/**
|
||||||
|
* Return the list of the known colors list
|
||||||
|
* @return array<string>
|
||||||
*/
|
*/
|
||||||
public static function colorList()
|
public static function colorList()
|
||||||
{
|
{
|
||||||
$color = new color();
|
$color = new Color();
|
||||||
$colorList = $color->colorList;
|
$colorList = $color->colorList;
|
||||||
return array_keys($colorList);
|
return array_keys($colorList);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Return an array with the RGB colors
|
/**
|
||||||
|
* Return an array with the RGB colors
|
||||||
* @param string $colorInText The color in textual form
|
* @param string $colorInText The color in textual form
|
||||||
|
* @return array<int>
|
||||||
*/
|
*/
|
||||||
public static function textToRGB($colorInText)
|
public static function textToRGB($colorInText)
|
||||||
{
|
{
|
||||||
$color = new color();
|
$color = new Color();
|
||||||
$colorList = $color->colorList;
|
$colorList = $color->colorList;
|
||||||
if (! array_key_exists($colorInText, $colorList)) {
|
if (! array_key_exists($colorInText, $colorList)) {
|
||||||
throw new \Exception(sprintf(
|
throw new \Exception(sprintf(
|
||||||
@@ -269,9 +241,11 @@ class Color
|
|||||||
return $colorList[$colorInText];
|
return $colorList[$colorInText];
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Allocate the color provided in text to the provided GD object
|
/**
|
||||||
* @param resource $gd The GD resource to add the color
|
* Allocate the color provided in text to the provided GD object
|
||||||
|
* @param \GdImage $gd The GD resource to add the color
|
||||||
* @param string $colorInText The color in textual form
|
* @param string $colorInText The color in textual form
|
||||||
|
* @return int|false
|
||||||
*/
|
*/
|
||||||
public static function allocateFromText($gd, $colorInText)
|
public static function allocateFromText($gd, $colorInText)
|
||||||
{
|
{
|
||||||
@@ -284,7 +258,7 @@ class Color
|
|||||||
500
|
500
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
$rgb = color::textToRGB($colorInText);
|
$rgb = Color::textToRGB($colorInText);
|
||||||
return imagecolorallocate($gd, $rgb[0], $rgb[1], $rgb[2]);
|
return imagecolorallocate($gd, $rgb[0], $rgb[1], $rgb[2]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user