On remplace completement phplot par artichow
This commit is contained in:
parent
05b7fdc28f
commit
995fc54414
@ -25,7 +25,7 @@
|
||||
/**
|
||||
\file htdocs/conf/conf.class.php
|
||||
\brief Fichier de la classe de stockage de la config courante
|
||||
\remarks La config est stockée dans le fichier conf/conf.php
|
||||
\remarks La config est stock<EFBFBD>e dans le fichier conf/conf.php
|
||||
\version $Revision$
|
||||
*/
|
||||
|
||||
@ -39,7 +39,7 @@
|
||||
class Conf
|
||||
{
|
||||
/** \public */
|
||||
//! Objet des caractéristiques de connexions
|
||||
//! Objet des caract<EFBFBD>ristiques de connexions
|
||||
var $db;
|
||||
//! Charset for HTML output
|
||||
var $character_set_client;
|
||||
@ -71,14 +71,14 @@ class Conf
|
||||
|
||||
/**
|
||||
* \brief Positionne toutes les variables de configuration
|
||||
* \param $db Handler d'accès base
|
||||
* \return int < 0 si erreur, >= 0 si succès
|
||||
* \param $db Handler d'acc<EFBFBD>s base
|
||||
* \return int < 0 si erreur, >= 0 si succ<EFBFBD>s
|
||||
*/
|
||||
function setValues($db)
|
||||
{
|
||||
dolibarr_syslog("functions.inc.php::setValues");
|
||||
|
||||
// Par defaut, à oui
|
||||
// Par defaut, <EFBFBD> oui
|
||||
$this->global->PRODUIT_CONFIRM_DELETE_LINE=1;
|
||||
|
||||
/*
|
||||
@ -97,7 +97,7 @@ class Conf
|
||||
{
|
||||
$objp = $db->fetch_object($result);
|
||||
$key=$objp->name;
|
||||
$value=$objp->value; // Pas de stripslashes (ne s'applique pas sur lecture en base mais après POST quand get_magic_quotes_gpc()==1)
|
||||
$value=$objp->value; // Pas de stripslashes (ne s'applique pas sur lecture en base mais apr<EFBFBD>s POST quand get_magic_quotes_gpc()==1)
|
||||
if ($key)
|
||||
{
|
||||
if (! defined("$key")) define ("$key", $value); // In some cases, the constant might be already forced (Example: SYSLOG_FILE during install)
|
||||
@ -110,12 +110,12 @@ class Conf
|
||||
|
||||
|
||||
// On reprend parametres du fichier de config conf.php
|
||||
// \TODO Mettre tous les param de conf DB dans une propriété de la classe
|
||||
// \TODO Mettre tous les param de conf DB dans une propri<EFBFBD>t<EFBFBD> de la classe
|
||||
|
||||
|
||||
/*
|
||||
* Nettoyage variables des gestionnaires de menu
|
||||
* conf->menu_top et conf->menu_left sont définis dans main.inc.php (selon user)
|
||||
* conf->menu_top et conf->menu_left sont d<EFBFBD>finis dans main.inc.php (selon user)
|
||||
*/
|
||||
if (! $this->global->MAIN_MENU_BARRETOP) $this->global->MAIN_MENU_BARRETOP="default.php";
|
||||
if (! $this->global->MAIN_MENUFRONT_BARRETOP) $this->global->MAIN_MENUFRONT_BARRETOP="default.php";
|
||||
@ -141,7 +141,7 @@ class Conf
|
||||
|
||||
/*
|
||||
* Autorisation globale d'uploader (necessaire pour desactiver dans la demo)
|
||||
* conf->upload peut etre écrasée dans main.inc.php (selon user)
|
||||
* conf->upload peut etre <EFBFBD>cras<EFBFBD>e dans main.inc.php (selon user)
|
||||
*/
|
||||
$this->upload = $this->global->MAIN_UPLOAD_DOC;
|
||||
|
||||
@ -391,7 +391,7 @@ class Conf
|
||||
$this->monnaie=$this->global->MAIN_MONNAIE;
|
||||
|
||||
// $this->compta->mode = Option du module Compta: Defini le mode de calcul des etats comptables (CA,...)
|
||||
$this->compta->mode = 'RECETTES-DEPENSES'; // Par défaut
|
||||
$this->compta->mode = 'RECETTES-DEPENSES'; // Par d<EFBFBD>faut
|
||||
if (defined('COMPTA_MODE') && COMPTA_MODE) {
|
||||
// Peut etre 'RECETTES-DEPENSES' ou 'CREANCES-DETTES'
|
||||
$this->compta->mode = COMPTA_MODE;
|
||||
@ -400,10 +400,10 @@ class Conf
|
||||
// $this->defaulttx
|
||||
if (defined('FACTURE_TVAOPTION') && FACTURE_TVAOPTION == 'franchise')
|
||||
{
|
||||
$this->defaulttx='0'; // Taux par défaut des factures clients
|
||||
$this->defaulttx='0'; // Taux par d<EFBFBD>faut des factures clients
|
||||
}
|
||||
else {
|
||||
$this->defaulttx=''; // Pas de taux par défaut des factures clients, le premier sera pris
|
||||
$this->defaulttx=''; // Pas de taux par d<EFBFBD>faut des factures clients, le premier sera pris
|
||||
}
|
||||
|
||||
// $this->liste_limit = constante de taille maximale des listes
|
||||
@ -441,12 +441,11 @@ class Conf
|
||||
}
|
||||
|
||||
// Defini MAIN_GRAPH_LIBRARY
|
||||
if (!isset($this->global->MAIN_GRAPH_LIBRARY) || ! in_array($this->global->MAIN_GRAPH_LIBRARY, array('phplot','artichow')))
|
||||
if (empty($this->global->MAIN_GRAPH_LIBRARY))
|
||||
{
|
||||
$this->global->MAIN_GRAPH_LIBRARY='phplot';
|
||||
// $this->global->MAIN_GRAPH_LIBRARY = 'artichow';
|
||||
$this->global->MAIN_GRAPH_LIBRARY = 'artichow';
|
||||
}
|
||||
|
||||
|
||||
// Format de la date
|
||||
// \todo Mettre les 4 formats dans fichier langue
|
||||
$this->format_date_short="%d/%m/%Y";
|
||||
@ -463,9 +462,9 @@ class Conf
|
||||
if (! isset($this->global->MAIN_MAX_DECIMALS_SHOWN)) $this->global->MAIN_MAX_DECIMALS_SHOWN=8;
|
||||
|
||||
|
||||
/* \todo Ajouter une option Gestion de la TVA dans le module compta qui permet de désactiver la fonction TVA
|
||||
* (pour particuliers ou libéraux en franchise)
|
||||
* En attendant, valeur forcée à 1
|
||||
/* \todo Ajouter une option Gestion de la TVA dans le module compta qui permet de d<EFBFBD>sactiver la fonction TVA
|
||||
* (pour particuliers ou lib<EFBFBD>raux en franchise)
|
||||
* En attendant, valeur forc<EFBFBD>e <EFBFBD> 1
|
||||
*/
|
||||
$this->compta->tva=1;
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,44 +0,0 @@
|
||||
This routine is a class for creating scientific and business
|
||||
charts. To run the test data extract the files with
|
||||
tar -zxvf phplot-4.0.2.tar.gz
|
||||
and then point your browser to
|
||||
examples/format-chart.php.
|
||||
|
||||
There are some configuration settings that you will need
|
||||
to make based on your setup.
|
||||
|
||||
1. File Type: Depending on the version of GD you are using,
|
||||
you may or may not have GIF or PNG file ability. That is
|
||||
set with the function.
|
||||
SetFileFormat("<filetype>") where <filetype> is png, gif, jpeg, ...
|
||||
or edit the file phplot.php and make the line
|
||||
var $file_format = "<filetype>";
|
||||
|
||||
2. TTF: If you have TTF installed then use
|
||||
SetUseTTF("1");
|
||||
otherwise use
|
||||
SetUseTTF("0");
|
||||
|
||||
Everything else should be independent of what version you are using.
|
||||
This has been tested with PHP3, PHP4, GD1.2 and GD 3.8.
|
||||
|
||||
To start with a test, see format_chart.php
|
||||
|
||||
--------------------------
|
||||
Compatibility Note: If you are using PHP3 earlier than version 3.0.2 then
|
||||
you need to change one line in phplot.php. Change
|
||||
ImageColorResolve
|
||||
to
|
||||
ImageColorAllocate
|
||||
|
||||
|
||||
Copyright (C) 1998,1999,2000,2001 Afan Ottenheimer, afan@jeo.net
|
||||
This is distributed with NO WARRANTY and under the terms of the GNU GPL
|
||||
and PHP licenses.
|
||||
If you use it - a cookie or some credit would be nice.
|
||||
You can get a copy of the GNU GPL at http://www.gnu.org/copyleft/gpl.html
|
||||
You can get a copy of the PHP License at http://www.php.net/license.html
|
||||
|
||||
See http://www.sourceforge.net/projects/phplot/ for later changelogs.
|
||||
Aug 15, 2000: Version 3: added dots, lines, area, and pie charts
|
||||
Aug 12, 1999: version 2: added bars that can be < 0
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -1,744 +0,0 @@
|
||||
<?php
|
||||
//Looking forward to the day when memory is so
|
||||
//plentiful to be able to set gigantic arrays,
|
||||
//we offer this taken from PHPLOT.
|
||||
$ColorArray = array(
|
||||
"snow" => array(255, 250, 250),
|
||||
"ghost white" => array(248, 248, 255),
|
||||
"GhostWhite" => array(248, 248, 255),
|
||||
"white smoke" => array(245, 245, 245),
|
||||
"WhiteSmoke" => array(245, 245, 245),
|
||||
"gainsboro" => array(220, 220, 220),
|
||||
"floral white" => array(255, 250, 240),
|
||||
"FloralWhite" => array(255, 250, 240),
|
||||
"old lace" => array(253, 245, 230),
|
||||
"OldLace" => array(253, 245, 230),
|
||||
"linen" => array(250, 240, 230),
|
||||
"antique white" => array(250, 235, 215),
|
||||
"AntiqueWhite" => array(250, 235, 215),
|
||||
"papaya whip" => array(255, 239, 213),
|
||||
"PapayaWhip" => array(255, 239, 213),
|
||||
"blanched almond" => array(255, 235, 205),
|
||||
"BlanchedAlmond" => array(255, 235, 205),
|
||||
"bisque" => array(255, 228, 196),
|
||||
"peach puff" => array(255, 218, 185),
|
||||
"PeachPuff" => array(255, 218, 185),
|
||||
"navajo white" => array(255, 222, 173),
|
||||
"NavajoWhite" => array(255, 222, 173),
|
||||
"moccasin" => array(255, 228, 181),
|
||||
"cornsilk" => array(255, 248, 220),
|
||||
"ivory" => array(255, 255, 240),
|
||||
"lemon chiffon" => array(255, 250, 205),
|
||||
"LemonChiffon" => array(255, 250, 205),
|
||||
"seashell" => array(255, 245, 238),
|
||||
"honeydew" => array(240, 255, 240),
|
||||
"mint cream" => array(245, 255, 250),
|
||||
"MintCream" => array(245, 255, 250),
|
||||
"azure" => array(240, 255, 255),
|
||||
"alice blue" => array(240, 248, 255),
|
||||
"AliceBlue" => array(240, 248, 255),
|
||||
"lavender" => array(230, 230, 250),
|
||||
"lavender blush" => array(255, 240, 245),
|
||||
"LavenderBlush" => array(255, 240, 245),
|
||||
"misty rose" => array(255, 228, 225),
|
||||
"MistyRose" => array(255, 228, 225),
|
||||
"white" => array(255, 255, 255),
|
||||
"black" => array( 0, 0, 0),
|
||||
"dark slate gray" => array( 47, 79, 79),
|
||||
"DarkSlateGray" => array( 47, 79, 79),
|
||||
"dark slate grey" => array( 47, 79, 79),
|
||||
"DarkSlateGrey" => array( 47, 79, 79),
|
||||
"dim gray" => array(105, 105, 105),
|
||||
"DimGray" => array(105, 105, 105),
|
||||
"dim grey" => array(105, 105, 105),
|
||||
"DimGrey" => array(105, 105, 105),
|
||||
"slate gray" => array(112, 128, 144),
|
||||
"SlateGray" => array(112, 128, 144),
|
||||
"slate grey" => array(112, 128, 144),
|
||||
"SlateGrey" => array(112, 128, 144),
|
||||
"light slate gray" => array(119, 136, 153),
|
||||
"LightSlateGray" => array(119, 136, 153),
|
||||
"light slate grey" => array(119, 136, 153),
|
||||
"LightSlateGrey" => array(119, 136, 153),
|
||||
"gray" => array(190, 190, 190),
|
||||
"grey" => array(190, 190, 190),
|
||||
"light grey" => array(211, 211, 211),
|
||||
"LightGrey" => array(211, 211, 211),
|
||||
"light gray" => array(211, 211, 211),
|
||||
"LightGray" => array(211, 211, 211),
|
||||
"midnight blue" => array( 25, 25, 112),
|
||||
"MidnightBlue" => array( 25, 25, 112),
|
||||
"navy" => array( 0, 0, 128),
|
||||
"navy blue" => array( 0, 0, 128),
|
||||
"NavyBlue" => array( 0, 0, 128),
|
||||
"cornflower blue" => array(100, 149, 237),
|
||||
"CornflowerBlue" => array(100, 149, 237),
|
||||
"dark slate blue" => array( 72, 61, 139),
|
||||
"DarkSlateBlue" => array( 72, 61, 139),
|
||||
"slate blue" => array(106, 90, 205),
|
||||
"SlateBlue" => array(106, 90, 205),
|
||||
"medium slate blue" => array(123, 104, 238),
|
||||
"MediumSlateBlue" => array(123, 104, 238),
|
||||
"light slate blue" => array(132, 112, 255),
|
||||
"LightSlateBlue" => array(132, 112, 255),
|
||||
"medium blue" => array( 0, 0, 205),
|
||||
"MediumBlue" => array( 0, 0, 205),
|
||||
"royal blue" => array( 65, 105, 225),
|
||||
"RoyalBlue" => array( 65, 105, 225),
|
||||
"blue" => array( 0, 0, 255),
|
||||
"dodger blue" => array( 30, 144, 255),
|
||||
"DodgerBlue" => array( 30, 144, 255),
|
||||
"deep sky blue" => array( 0, 191, 255),
|
||||
"DeepSkyBlue" => array( 0, 191, 255),
|
||||
"sky blue" => array(135, 206, 235),
|
||||
"SkyBlue" => array(135, 206, 235),
|
||||
"light sky blue" => array(135, 206, 250),
|
||||
"LightSkyBlue" => array(135, 206, 250),
|
||||
"steel blue" => array( 70, 130, 180),
|
||||
"SteelBlue" => array( 70, 130, 180),
|
||||
"light steel blue" => array(176, 196, 222),
|
||||
"LightSteelBlue" => array(176, 196, 222),
|
||||
"light blue" => array(173, 216, 230),
|
||||
"LightBlue" => array(173, 216, 230),
|
||||
"powder blue" => array(176, 224, 230),
|
||||
"PowderBlue" => array(176, 224, 230),
|
||||
"pale turquoise" => array(175, 238, 238),
|
||||
"PaleTurquoise" => array(175, 238, 238),
|
||||
"dark turquoise" => array( 0, 206, 209),
|
||||
"DarkTurquoise" => array( 0, 206, 209),
|
||||
"medium turquoise" => array( 72, 209, 204),
|
||||
"MediumTurquoise" => array( 72, 209, 204),
|
||||
"turquoise" => array( 64, 224, 208),
|
||||
"cyan" => array( 0, 255, 255),
|
||||
"light cyan" => array(224, 255, 255),
|
||||
"LightCyan" => array(224, 255, 255),
|
||||
"cadet blue" => array( 95, 158, 160),
|
||||
"CadetBlue" => array( 95, 158, 160),
|
||||
"medium aquamarine" => array(102, 205, 170),
|
||||
"MediumAquamarine" => array(102, 205, 170),
|
||||
"aquamarine" => array(127, 255, 212),
|
||||
"dark green" => array( 0, 100, 0),
|
||||
"DarkGreen" => array( 0, 100, 0),
|
||||
"dark olive green" => array( 85, 107, 47),
|
||||
"DarkOliveGreen" => array( 85, 107, 47),
|
||||
"dark sea green" => array(143, 188, 143),
|
||||
"DarkSeaGreen" => array(143, 188, 143),
|
||||
"sea green" => array( 46, 139, 87),
|
||||
"SeaGreen" => array( 46, 139, 87),
|
||||
"medium sea green" => array( 60, 179, 113),
|
||||
"MediumSeaGreen" => array( 60, 179, 113),
|
||||
"light sea green" => array( 32, 178, 170),
|
||||
"LightSeaGreen" => array( 32, 178, 170),
|
||||
"pale green" => array(152, 251, 152),
|
||||
"PaleGreen" => array(152, 251, 152),
|
||||
"spring green" => array( 0, 255, 127),
|
||||
"SpringGreen" => array( 0, 255, 127),
|
||||
"lawn green" => array(124, 252, 0),
|
||||
"LawnGreen" => array(124, 252, 0),
|
||||
"green" => array( 0, 255, 0),
|
||||
"chartreuse" => array(127, 255, 0),
|
||||
"medium spring green" => array( 0, 250, 154),
|
||||
"MediumSpringGreen" => array( 0, 250, 154),
|
||||
"green yellow" => array(173, 255, 47),
|
||||
"GreenYellow" => array(173, 255, 47),
|
||||
"lime green" => array( 50, 205, 50),
|
||||
"LimeGreen" => array( 50, 205, 50),
|
||||
"yellow green" => array(154, 205, 50),
|
||||
"YellowGreen" => array(154, 205, 50),
|
||||
"forest green" => array( 34, 139, 34),
|
||||
"ForestGreen" => array( 34, 139, 34),
|
||||
"olive drab" => array(107, 142, 35),
|
||||
"OliveDrab" => array(107, 142, 35),
|
||||
"dark khaki" => array(189, 183, 107),
|
||||
"DarkKhaki" => array(189, 183, 107),
|
||||
"khaki" => array(240, 230, 140),
|
||||
"pale goldenrod" => array(238, 232, 170),
|
||||
"PaleGoldenrod" => array(238, 232, 170),
|
||||
"light goldenrod yellow" => array(250, 250, 210),
|
||||
"LightGoldenrodYellow" => array(250, 250, 210),
|
||||
"light yellow" => array(255, 255, 224),
|
||||
"LightYellow" => array(255, 255, 224),
|
||||
"yellow" => array(255, 255, 0),
|
||||
"gold" => array(255, 215, 0),
|
||||
"light goldenrod" => array(238, 221, 130),
|
||||
"LightGoldenrod" => array(238, 221, 130),
|
||||
"goldenrod" => array(218, 165, 32),
|
||||
"dark goldenrod" => array(184, 134, 11),
|
||||
"DarkGoldenrod" => array(184, 134, 11),
|
||||
"rosy brown" => array(188, 143, 143),
|
||||
"RosyBrown" => array(188, 143, 143),
|
||||
"indian red" => array(205, 92, 92),
|
||||
"IndianRed" => array(205, 92, 92),
|
||||
"saddle brown" => array(139, 69, 19),
|
||||
"SaddleBrown" => array(139, 69, 19),
|
||||
"sienna" => array(160, 82, 45),
|
||||
"peru" => array(205, 133, 63),
|
||||
"burlywood" => array(222, 184, 135),
|
||||
"beige" => array(245, 245, 220),
|
||||
"wheat" => array(245, 222, 179),
|
||||
"sandy brown" => array(244, 164, 96),
|
||||
"SandyBrown" => array(244, 164, 96),
|
||||
"tan" => array(210, 180, 140),
|
||||
"chocolate" => array(210, 105, 30),
|
||||
"firebrick" => array(178, 34, 34),
|
||||
"brown" => array(165, 42, 42),
|
||||
"dark salmon" => array(233, 150, 122),
|
||||
"DarkSalmon" => array(233, 150, 122),
|
||||
"salmon" => array(250, 128, 114),
|
||||
"light salmon" => array(255, 160, 122),
|
||||
"LightSalmon" => array(255, 160, 122),
|
||||
"orange" => array(255, 165, 0),
|
||||
"dark orange" => array(255, 140, 0),
|
||||
"DarkOrange" => array(255, 140, 0),
|
||||
"coral" => array(255, 127, 80),
|
||||
"light coral" => array(240, 128, 128),
|
||||
"LightCoral" => array(240, 128, 128),
|
||||
"tomato" => array(255, 99, 71),
|
||||
"orange red" => array(255, 69, 0),
|
||||
"OrangeRed" => array(255, 69, 0),
|
||||
"red" => array(255, 0, 0),
|
||||
"hot pink" => array(255, 105, 180),
|
||||
"HotPink" => array(255, 105, 180),
|
||||
"deep pink" => array(255, 20, 147),
|
||||
"DeepPink" => array(255, 20, 147),
|
||||
"pink" => array(255, 192, 203),
|
||||
"light pink" => array(255, 182, 193),
|
||||
"LightPink" => array(255, 182, 193),
|
||||
"pale violet red" => array(219, 112, 147),
|
||||
"PaleVioletRed" => array(219, 112, 147),
|
||||
"maroon" => array(176, 48, 96),
|
||||
"medium violet red" => array(199, 21, 133),
|
||||
"MediumVioletRed" => array(199, 21, 133),
|
||||
"violet red" => array(208, 32, 144),
|
||||
"VioletRed" => array(208, 32, 144),
|
||||
"magenta" => array(255, 0, 255),
|
||||
"violet" => array(238, 130, 238),
|
||||
"plum" => array(221, 160, 221),
|
||||
"orchid" => array(218, 112, 214),
|
||||
"medium orchid" => array(186, 85, 211),
|
||||
"MediumOrchid" => array(186, 85, 211),
|
||||
"dark orchid" => array(153, 50, 204),
|
||||
"DarkOrchid" => array(153, 50, 204),
|
||||
"dark violet" => array(148, 0, 211),
|
||||
"DarkViolet" => array(148, 0, 211),
|
||||
"blue violet" => array(138, 43, 226),
|
||||
"BlueViolet" => array(138, 43, 226),
|
||||
"purple" => array(160, 32, 240),
|
||||
"medium purple" => array(147, 112, 219),
|
||||
"MediumPurple" => array(147, 112, 219),
|
||||
"thistle" => array(216, 191, 216),
|
||||
"snow1" => array(255, 250, 250),
|
||||
"snow2" => array(238, 233, 233),
|
||||
"snow3" => array(205, 201, 201),
|
||||
"snow4" => array(139, 137, 137),
|
||||
"seashell1" => array(255, 245, 238),
|
||||
"seashell2" => array(238, 229, 222),
|
||||
"seashell3" => array(205, 197, 191),
|
||||
"seashell4" => array(139, 134, 130),
|
||||
"AntiqueWhite1" => array(255, 239, 219),
|
||||
"AntiqueWhite2" => array(238, 223, 204),
|
||||
"AntiqueWhite3" => array(205, 192, 176),
|
||||
"AntiqueWhite4" => array(139, 131, 120),
|
||||
"bisque1" => array(255, 228, 196),
|
||||
"bisque2" => array(238, 213, 183),
|
||||
"bisque3" => array(205, 183, 158),
|
||||
"bisque4" => array(139, 125, 107),
|
||||
"PeachPuff1" => array(255, 218, 185),
|
||||
"PeachPuff2" => array(238, 203, 173),
|
||||
"PeachPuff3" => array(205, 175, 149),
|
||||
"PeachPuff4" => array(139, 119, 101),
|
||||
"NavajoWhite1" => array(255, 222, 173),
|
||||
"NavajoWhite2" => array(238, 207, 161),
|
||||
"NavajoWhite3" => array(205, 179, 139),
|
||||
"NavajoWhite4" => array(139, 121, 94),
|
||||
"LemonChiffon1" => array(255, 250, 205),
|
||||
"LemonChiffon2" => array(238, 233, 191),
|
||||
"LemonChiffon3" => array(205, 201, 165),
|
||||
"LemonChiffon4" => array(139, 137, 112),
|
||||
"cornsilk1" => array(255, 248, 220),
|
||||
"cornsilk2" => array(238, 232, 205),
|
||||
"cornsilk3" => array(205, 200, 177),
|
||||
"cornsilk4" => array(139, 136, 120),
|
||||
"ivory1" => array(255, 255, 240),
|
||||
"ivory2" => array(238, 238, 224),
|
||||
"ivory3" => array(205, 205, 193),
|
||||
"ivory4" => array(139, 139, 131),
|
||||
"honeydew1" => array(240, 255, 240),
|
||||
"honeydew2" => array(224, 238, 224),
|
||||
"honeydew3" => array(193, 205, 193),
|
||||
"honeydew4" => array(131, 139, 131),
|
||||
"LavenderBlush1" => array(255, 240, 245),
|
||||
"LavenderBlush2" => array(238, 224, 229),
|
||||
"LavenderBlush3" => array(205, 193, 197),
|
||||
"LavenderBlush4" => array(139, 131, 134),
|
||||
"MistyRose1" => array(255, 228, 225),
|
||||
"MistyRose2" => array(238, 213, 210),
|
||||
"MistyRose3" => array(205, 183, 181),
|
||||
"MistyRose4" => array(139, 125, 123),
|
||||
"azure1" => array(240, 255, 255),
|
||||
"azure2" => array(224, 238, 238),
|
||||
"azure3" => array(193, 205, 205),
|
||||
"azure4" => array(131, 139, 139),
|
||||
"SlateBlue1" => array(131, 111, 255),
|
||||
"SlateBlue2" => array(122, 103, 238),
|
||||
"SlateBlue3" => array(105, 89, 205),
|
||||
"SlateBlue4" => array( 71, 60, 139),
|
||||
"RoyalBlue1" => array( 72, 118, 255),
|
||||
"RoyalBlue2" => array( 67, 110, 238),
|
||||
"RoyalBlue3" => array( 58, 95, 205),
|
||||
"RoyalBlue4" => array( 39, 64, 139),
|
||||
"blue1" => array( 0, 0, 255),
|
||||
"blue2" => array( 0, 0, 238),
|
||||
"blue3" => array( 0, 0, 205),
|
||||
"blue4" => array( 0, 0, 139),
|
||||
"DodgerBlue1" => array( 30, 144, 255),
|
||||
"DodgerBlue2" => array( 28, 134, 238),
|
||||
"DodgerBlue3" => array( 24, 116, 205),
|
||||
"DodgerBlue4" => array( 16, 78, 139),
|
||||
"SteelBlue1" => array( 99, 184, 255),
|
||||
"SteelBlue2" => array( 92, 172, 238),
|
||||
"SteelBlue3" => array( 79, 148, 205),
|
||||
"SteelBlue4" => array( 54, 100, 139),
|
||||
"DeepSkyBlue1" => array( 0, 191, 255),
|
||||
"DeepSkyBlue2" => array( 0, 178, 238),
|
||||
"DeepSkyBlue3" => array( 0, 154, 205),
|
||||
"DeepSkyBlue4" => array( 0, 104, 139),
|
||||
"SkyBlue1" => array(135, 206, 255),
|
||||
"SkyBlue2" => array(126, 192, 238),
|
||||
"SkyBlue3" => array(108, 166, 205),
|
||||
"SkyBlue4" => array( 74, 112, 139),
|
||||
"LightSkyBlue1" => array(176, 226, 255),
|
||||
"LightSkyBlue2" => array(164, 211, 238),
|
||||
"LightSkyBlue3" => array(141, 182, 205),
|
||||
"LightSkyBlue4" => array( 96, 123, 139),
|
||||
"SlateGray1" => array(198, 226, 255),
|
||||
"SlateGray2" => array(185, 211, 238),
|
||||
"SlateGray3" => array(159, 182, 205),
|
||||
"SlateGray4" => array(108, 123, 139),
|
||||
"LightSteelBlue1" => array(202, 225, 255),
|
||||
"LightSteelBlue2" => array(188, 210, 238),
|
||||
"LightSteelBlue3" => array(162, 181, 205),
|
||||
"LightSteelBlue4" => array(110, 123, 139),
|
||||
"LightBlue1" => array(191, 239, 255),
|
||||
"LightBlue2" => array(178, 223, 238),
|
||||
"LightBlue3" => array(154, 192, 205),
|
||||
"LightBlue4" => array(104, 131, 139),
|
||||
"LightCyan1" => array(224, 255, 255),
|
||||
"LightCyan2" => array(209, 238, 238),
|
||||
"LightCyan3" => array(180, 205, 205),
|
||||
"LightCyan4" => array(122, 139, 139),
|
||||
"PaleTurquoise1" => array(187, 255, 255),
|
||||
"PaleTurquoise2" => array(174, 238, 238),
|
||||
"PaleTurquoise3" => array(150, 205, 205),
|
||||
"PaleTurquoise4" => array(102, 139, 139),
|
||||
"CadetBlue1" => array(152, 245, 255),
|
||||
"CadetBlue2" => array(142, 229, 238),
|
||||
"CadetBlue3" => array(122, 197, 205),
|
||||
"CadetBlue4" => array( 83, 134, 139),
|
||||
"turquoise1" => array( 0, 245, 255),
|
||||
"turquoise2" => array( 0, 229, 238),
|
||||
"turquoise3" => array( 0, 197, 205),
|
||||
"turquoise4" => array( 0, 134, 139),
|
||||
"cyan1" => array( 0, 255, 255),
|
||||
"cyan2" => array( 0, 238, 238),
|
||||
"cyan3" => array( 0, 205, 205),
|
||||
"cyan4" => array( 0, 139, 139),
|
||||
"DarkSlateGray1" => array(151, 255, 255),
|
||||
"DarkSlateGray2" => array(141, 238, 238),
|
||||
"DarkSlateGray3" => array(121, 205, 205),
|
||||
"DarkSlateGray4" => array( 82, 139, 139),
|
||||
"aquamarine1" => array(127, 255, 212),
|
||||
"aquamarine2" => array(118, 238, 198),
|
||||
"aquamarine3" => array(102, 205, 170),
|
||||
"aquamarine4" => array( 69, 139, 116),
|
||||
"DarkSeaGreen1" => array(193, 255, 193),
|
||||
"DarkSeaGreen2" => array(180, 238, 180),
|
||||
"DarkSeaGreen3" => array(155, 205, 155),
|
||||
"DarkSeaGreen4" => array(105, 139, 105),
|
||||
"SeaGreen1" => array( 84, 255, 159),
|
||||
"SeaGreen2" => array( 78, 238, 148),
|
||||
"SeaGreen3" => array( 67, 205, 128),
|
||||
"SeaGreen4" => array( 46, 139, 87),
|
||||
"PaleGreen1" => array(154, 255, 154),
|
||||
"PaleGreen2" => array(144, 238, 144),
|
||||
"PaleGreen3" => array(124, 205, 124),
|
||||
"PaleGreen4" => array( 84, 139, 84),
|
||||
"SpringGreen1" => array( 0, 255, 127),
|
||||
"SpringGreen2" => array( 0, 238, 118),
|
||||
"SpringGreen3" => array( 0, 205, 102),
|
||||
"SpringGreen4" => array( 0, 139, 69),
|
||||
"green1" => array( 0, 255, 0),
|
||||
"green2" => array( 0, 238, 0),
|
||||
"green3" => array( 0, 205, 0),
|
||||
"green4" => array( 0, 139, 0),
|
||||
"chartreuse1" => array(127, 255, 0),
|
||||
"chartreuse2" => array(118, 238, 0),
|
||||
"chartreuse3" => array(102, 205, 0),
|
||||
"chartreuse4" => array( 69, 139, 0),
|
||||
"OliveDrab1" => array(192, 255, 62),
|
||||
"OliveDrab2" => array(179, 238, 58),
|
||||
"OliveDrab3" => array(154, 205, 50),
|
||||
"OliveDrab4" => array(105, 139, 34),
|
||||
"DarkOliveGreen1" => array(202, 255, 112),
|
||||
"DarkOliveGreen2" => array(188, 238, 104),
|
||||
"DarkOliveGreen3" => array(162, 205, 90),
|
||||
"DarkOliveGreen4" => array(110, 139, 61),
|
||||
"khaki1" => array(255, 246, 143),
|
||||
"khaki2" => array(238, 230, 133),
|
||||
"khaki3" => array(205, 198, 115),
|
||||
"khaki4" => array(139, 134, 78),
|
||||
"LightGoldenrod1" => array(255, 236, 139),
|
||||
"LightGoldenrod2" => array(238, 220, 130),
|
||||
"LightGoldenrod3" => array(205, 190, 112),
|
||||
"LightGoldenrod4" => array(139, 129, 76),
|
||||
"LightYellow1" => array(255, 255, 224),
|
||||
"LightYellow2" => array(238, 238, 209),
|
||||
"LightYellow3" => array(205, 205, 180),
|
||||
"LightYellow4" => array(139, 139, 122),
|
||||
"yellow1" => array(255, 255, 0),
|
||||
"yellow2" => array(238, 238, 0),
|
||||
"yellow3" => array(205, 205, 0),
|
||||
"yellow4" => array(139, 139, 0),
|
||||
"gold1" => array(255, 215, 0),
|
||||
"gold2" => array(238, 201, 0),
|
||||
"gold3" => array(205, 173, 0),
|
||||
"gold4" => array(139, 117, 0),
|
||||
"goldenrod1" => array(255, 193, 37),
|
||||
"goldenrod2" => array(238, 180, 34),
|
||||
"goldenrod3" => array(205, 155, 29),
|
||||
"goldenrod4" => array(139, 105, 20),
|
||||
"DarkGoldenrod1" => array(255, 185, 15),
|
||||
"DarkGoldenrod2" => array(238, 173, 14),
|
||||
"DarkGoldenrod3" => array(205, 149, 12),
|
||||
"DarkGoldenrod4" => array(139, 101, 8),
|
||||
"RosyBrown1" => array(255, 193, 193),
|
||||
"RosyBrown2" => array(238, 180, 180),
|
||||
"RosyBrown3" => array(205, 155, 155),
|
||||
"RosyBrown4" => array(139, 105, 105),
|
||||
"IndianRed1" => array(255, 106, 106),
|
||||
"IndianRed2" => array(238, 99, 99),
|
||||
"IndianRed3" => array(205, 85, 85),
|
||||
"IndianRed4" => array(139, 58, 58),
|
||||
"sienna1" => array(255, 130, 71),
|
||||
"sienna2" => array(238, 121, 66),
|
||||
"sienna3" => array(205, 104, 57),
|
||||
"sienna4" => array(139, 71, 38),
|
||||
"burlywood1" => array(255, 211, 155),
|
||||
"burlywood2" => array(238, 197, 145),
|
||||
"burlywood3" => array(205, 170, 125),
|
||||
"burlywood4" => array(139, 115, 85),
|
||||
"wheat1" => array(255, 231, 186),
|
||||
"wheat2" => array(238, 216, 174),
|
||||
"wheat3" => array(205, 186, 150),
|
||||
"wheat4" => array(139, 126, 102),
|
||||
"tan1" => array(255, 165, 79),
|
||||
"tan2" => array(238, 154, 73),
|
||||
"tan3" => array(205, 133, 63),
|
||||
"tan4" => array(139, 90, 43),
|
||||
"chocolate1" => array(255, 127, 36),
|
||||
"chocolate2" => array(238, 118, 33),
|
||||
"chocolate3" => array(205, 102, 29),
|
||||
"chocolate4" => array(139, 69, 19),
|
||||
"firebrick1" => array(255, 48, 48),
|
||||
"firebrick2" => array(238, 44, 44),
|
||||
"firebrick3" => array(205, 38, 38),
|
||||
"firebrick4" => array(139, 26, 26),
|
||||
"brown1" => array(255, 64, 64),
|
||||
"brown2" => array(238, 59, 59),
|
||||
"brown3" => array(205, 51, 51),
|
||||
"brown4" => array(139, 35, 35),
|
||||
"salmon1" => array(255, 140, 105),
|
||||
"salmon2" => array(238, 130, 98),
|
||||
"salmon3" => array(205, 112, 84),
|
||||
"salmon4" => array(139, 76, 57),
|
||||
"LightSalmon1" => array(255, 160, 122),
|
||||
"LightSalmon2" => array(238, 149, 114),
|
||||
"LightSalmon3" => array(205, 129, 98),
|
||||
"LightSalmon4" => array(139, 87, 66),
|
||||
"orange1" => array(255, 165, 0),
|
||||
"orange2" => array(238, 154, 0),
|
||||
"orange3" => array(205, 133, 0),
|
||||
"orange4" => array(139, 90, 0),
|
||||
"DarkOrange1" => array(255, 127, 0),
|
||||
"DarkOrange2" => array(238, 118, 0),
|
||||
"DarkOrange3" => array(205, 102, 0),
|
||||
"DarkOrange4" => array(139, 69, 0),
|
||||
"coral1" => array(255, 114, 86),
|
||||
"coral2" => array(238, 106, 80),
|
||||
"coral3" => array(205, 91, 69),
|
||||
"coral4" => array(139, 62, 47),
|
||||
"tomato1" => array(255, 99, 71),
|
||||
"tomato2" => array(238, 92, 66),
|
||||
"tomato3" => array(205, 79, 57),
|
||||
"tomato4" => array(139, 54, 38),
|
||||
"OrangeRed1" => array(255, 69, 0),
|
||||
"OrangeRed2" => array(238, 64, 0),
|
||||
"OrangeRed3" => array(205, 55, 0),
|
||||
"OrangeRed4" => array(139, 37, 0),
|
||||
"red1" => array(255, 0, 0),
|
||||
"red2" => array(238, 0, 0),
|
||||
"red3" => array(205, 0, 0),
|
||||
"red4" => array(139, 0, 0),
|
||||
"DeepPink1" => array(255, 20, 147),
|
||||
"DeepPink2" => array(238, 18, 137),
|
||||
"DeepPink3" => array(205, 16, 118),
|
||||
"DeepPink4" => array(139, 10, 80),
|
||||
"HotPink1" => array(255, 110, 180),
|
||||
"HotPink2" => array(238, 106, 167),
|
||||
"HotPink3" => array(205, 96, 144),
|
||||
"HotPink4" => array(139, 58, 98),
|
||||
"pink1" => array(255, 181, 197),
|
||||
"pink2" => array(238, 169, 184),
|
||||
"pink3" => array(205, 145, 158),
|
||||
"pink4" => array(139, 99, 108),
|
||||
"LightPink1" => array(255, 174, 185),
|
||||
"LightPink2" => array(238, 162, 173),
|
||||
"LightPink3" => array(205, 140, 149),
|
||||
"LightPink4" => array(139, 95, 101),
|
||||
"PaleVioletRed1" => array(255, 130, 171),
|
||||
"PaleVioletRed2" => array(238, 121, 159),
|
||||
"PaleVioletRed3" => array(205, 104, 137),
|
||||
"PaleVioletRed4" => array(139, 71, 93),
|
||||
"maroon1" => array(255, 52, 179),
|
||||
"maroon2" => array(238, 48, 167),
|
||||
"maroon3" => array(205, 41, 144),
|
||||
"maroon4" => array(139, 28, 98),
|
||||
"VioletRed1" => array(255, 62, 150),
|
||||
"VioletRed2" => array(238, 58, 140),
|
||||
"VioletRed3" => array(205, 50, 120),
|
||||
"VioletRed4" => array(139, 34, 82),
|
||||
"magenta1" => array(255, 0, 255),
|
||||
"magenta2" => array(238, 0, 238),
|
||||
"magenta3" => array(205, 0, 205),
|
||||
"magenta4" => array(139, 0, 139),
|
||||
"orchid1" => array(255, 131, 250),
|
||||
"orchid2" => array(238, 122, 233),
|
||||
"orchid3" => array(205, 105, 201),
|
||||
"orchid4" => array(139, 71, 137),
|
||||
"plum1" => array(255, 187, 255),
|
||||
"plum2" => array(238, 174, 238),
|
||||
"plum3" => array(205, 150, 205),
|
||||
"plum4" => array(139, 102, 139),
|
||||
"MediumOrchid1" => array(224, 102, 255),
|
||||
"MediumOrchid2" => array(209, 95, 238),
|
||||
"MediumOrchid3" => array(180, 82, 205),
|
||||
"MediumOrchid4" => array(122, 55, 139),
|
||||
"DarkOrchid1" => array(191, 62, 255),
|
||||
"DarkOrchid2" => array(178, 58, 238),
|
||||
"DarkOrchid3" => array(154, 50, 205),
|
||||
"DarkOrchid4" => array(104, 34, 139),
|
||||
"purple1" => array(155, 48, 255),
|
||||
"purple2" => array(145, 44, 238),
|
||||
"purple3" => array(125, 38, 205),
|
||||
"purple4" => array( 85, 26, 139),
|
||||
"MediumPurple1" => array(171, 130, 255),
|
||||
"MediumPurple2" => array(159, 121, 238),
|
||||
"MediumPurple3" => array(137, 104, 205),
|
||||
"MediumPurple4" => array( 93, 71, 139),
|
||||
"thistle1" => array(255, 225, 255),
|
||||
"thistle2" => array(238, 210, 238),
|
||||
"thistle3" => array(205, 181, 205),
|
||||
"thistle4" => array(139, 123, 139),
|
||||
"gray0" => array( 0, 0, 0),
|
||||
"grey0" => array( 0, 0, 0),
|
||||
"gray1" => array( 3, 3, 3),
|
||||
"grey1" => array( 3, 3, 3),
|
||||
"gray2" => array( 5, 5, 5),
|
||||
"grey2" => array( 5, 5, 5),
|
||||
"gray3" => array( 8, 8, 8),
|
||||
"grey3" => array( 8, 8, 8),
|
||||
"gray4" => array( 10, 10, 10),
|
||||
"grey4" => array( 10, 10, 10),
|
||||
"gray5" => array( 13, 13, 13),
|
||||
"grey5" => array( 13, 13, 13),
|
||||
"gray6" => array( 15, 15, 15),
|
||||
"grey6" => array( 15, 15, 15),
|
||||
"gray7" => array( 18, 18, 18),
|
||||
"grey7" => array( 18, 18, 18),
|
||||
"gray8" => array( 20, 20, 20),
|
||||
"grey8" => array( 20, 20, 20),
|
||||
"gray9" => array( 23, 23, 23),
|
||||
"grey9" => array( 23, 23, 23),
|
||||
"gray10" => array( 26, 26, 26),
|
||||
"grey10" => array( 26, 26, 26),
|
||||
"gray11" => array( 28, 28, 28),
|
||||
"grey11" => array( 28, 28, 28),
|
||||
"gray12" => array( 31, 31, 31),
|
||||
"grey12" => array( 31, 31, 31),
|
||||
"gray13" => array( 33, 33, 33),
|
||||
"grey13" => array( 33, 33, 33),
|
||||
"gray14" => array( 36, 36, 36),
|
||||
"grey14" => array( 36, 36, 36),
|
||||
"gray15" => array( 38, 38, 38),
|
||||
"grey15" => array( 38, 38, 38),
|
||||
"gray16" => array( 41, 41, 41),
|
||||
"grey16" => array( 41, 41, 41),
|
||||
"gray17" => array( 43, 43, 43),
|
||||
"grey17" => array( 43, 43, 43),
|
||||
"gray18" => array( 46, 46, 46),
|
||||
"grey18" => array( 46, 46, 46),
|
||||
"gray19" => array( 48, 48, 48),
|
||||
"grey19" => array( 48, 48, 48),
|
||||
"gray20" => array( 51, 51, 51),
|
||||
"grey20" => array( 51, 51, 51),
|
||||
"gray21" => array( 54, 54, 54),
|
||||
"grey21" => array( 54, 54, 54),
|
||||
"gray22" => array( 56, 56, 56),
|
||||
"grey22" => array( 56, 56, 56),
|
||||
"gray23" => array( 59, 59, 59),
|
||||
"grey23" => array( 59, 59, 59),
|
||||
"gray24" => array( 61, 61, 61),
|
||||
"grey24" => array( 61, 61, 61),
|
||||
"gray25" => array( 64, 64, 64),
|
||||
"grey25" => array( 64, 64, 64),
|
||||
"gray26" => array( 66, 66, 66),
|
||||
"grey26" => array( 66, 66, 66),
|
||||
"gray27" => array( 69, 69, 69),
|
||||
"grey27" => array( 69, 69, 69),
|
||||
"gray28" => array( 71, 71, 71),
|
||||
"grey28" => array( 71, 71, 71),
|
||||
"gray29" => array( 74, 74, 74),
|
||||
"grey29" => array( 74, 74, 74),
|
||||
"gray30" => array( 77, 77, 77),
|
||||
"grey30" => array( 77, 77, 77),
|
||||
"gray31" => array( 79, 79, 79),
|
||||
"grey31" => array( 79, 79, 79),
|
||||
"gray32" => array( 82, 82, 82),
|
||||
"grey32" => array( 82, 82, 82),
|
||||
"gray33" => array( 84, 84, 84),
|
||||
"grey33" => array( 84, 84, 84),
|
||||
"gray34" => array( 87, 87, 87),
|
||||
"grey34" => array( 87, 87, 87),
|
||||
"gray35" => array( 89, 89, 89),
|
||||
"grey35" => array( 89, 89, 89),
|
||||
"gray36" => array( 92, 92, 92),
|
||||
"grey36" => array( 92, 92, 92),
|
||||
"gray37" => array( 94, 94, 94),
|
||||
"grey37" => array( 94, 94, 94),
|
||||
"gray38" => array( 97, 97, 97),
|
||||
"grey38" => array( 97, 97, 97),
|
||||
"gray39" => array( 99, 99, 99),
|
||||
"grey39" => array( 99, 99, 99),
|
||||
"gray40" => array(102, 102, 102),
|
||||
"grey40" => array(102, 102, 102),
|
||||
"gray41" => array(105, 105, 105),
|
||||
"grey41" => array(105, 105, 105),
|
||||
"gray42" => array(107, 107, 107),
|
||||
"grey42" => array(107, 107, 107),
|
||||
"gray43" => array(110, 110, 110),
|
||||
"grey43" => array(110, 110, 110),
|
||||
"gray44" => array(112, 112, 112),
|
||||
"grey44" => array(112, 112, 112),
|
||||
"gray45" => array(115, 115, 115),
|
||||
"grey45" => array(115, 115, 115),
|
||||
"gray46" => array(117, 117, 117),
|
||||
"grey46" => array(117, 117, 117),
|
||||
"gray47" => array(120, 120, 120),
|
||||
"grey47" => array(120, 120, 120),
|
||||
"gray48" => array(122, 122, 122),
|
||||
"grey48" => array(122, 122, 122),
|
||||
"gray49" => array(125, 125, 125),
|
||||
"grey49" => array(125, 125, 125),
|
||||
"gray50" => array(127, 127, 127),
|
||||
"grey50" => array(127, 127, 127),
|
||||
"gray51" => array(130, 130, 130),
|
||||
"grey51" => array(130, 130, 130),
|
||||
"gray52" => array(133, 133, 133),
|
||||
"grey52" => array(133, 133, 133),
|
||||
"gray53" => array(135, 135, 135),
|
||||
"grey53" => array(135, 135, 135),
|
||||
"gray54" => array(138, 138, 138),
|
||||
"grey54" => array(138, 138, 138),
|
||||
"gray55" => array(140, 140, 140),
|
||||
"grey55" => array(140, 140, 140),
|
||||
"gray56" => array(143, 143, 143),
|
||||
"grey56" => array(143, 143, 143),
|
||||
"gray57" => array(145, 145, 145),
|
||||
"grey57" => array(145, 145, 145),
|
||||
"gray58" => array(148, 148, 148),
|
||||
"grey58" => array(148, 148, 148),
|
||||
"gray59" => array(150, 150, 150),
|
||||
"grey59" => array(150, 150, 150),
|
||||
"gray60" => array(153, 153, 153),
|
||||
"grey60" => array(153, 153, 153),
|
||||
"gray61" => array(156, 156, 156),
|
||||
"grey61" => array(156, 156, 156),
|
||||
"gray62" => array(158, 158, 158),
|
||||
"grey62" => array(158, 158, 158),
|
||||
"gray63" => array(161, 161, 161),
|
||||
"grey63" => array(161, 161, 161),
|
||||
"gray64" => array(163, 163, 163),
|
||||
"grey64" => array(163, 163, 163),
|
||||
"gray65" => array(166, 166, 166),
|
||||
"grey65" => array(166, 166, 166),
|
||||
"gray66" => array(168, 168, 168),
|
||||
"grey66" => array(168, 168, 168),
|
||||
"gray67" => array(171, 171, 171),
|
||||
"grey67" => array(171, 171, 171),
|
||||
"gray68" => array(173, 173, 173),
|
||||
"grey68" => array(173, 173, 173),
|
||||
"gray69" => array(176, 176, 176),
|
||||
"grey69" => array(176, 176, 176),
|
||||
"gray70" => array(179, 179, 179),
|
||||
"grey70" => array(179, 179, 179),
|
||||
"gray71" => array(181, 181, 181),
|
||||
"grey71" => array(181, 181, 181),
|
||||
"gray72" => array(184, 184, 184),
|
||||
"grey72" => array(184, 184, 184),
|
||||
"gray73" => array(186, 186, 186),
|
||||
"grey73" => array(186, 186, 186),
|
||||
"gray74" => array(189, 189, 189),
|
||||
"grey74" => array(189, 189, 189),
|
||||
"gray75" => array(191, 191, 191),
|
||||
"grey75" => array(191, 191, 191),
|
||||
"gray76" => array(194, 194, 194),
|
||||
"grey76" => array(194, 194, 194),
|
||||
"gray77" => array(196, 196, 196),
|
||||
"grey77" => array(196, 196, 196),
|
||||
"gray78" => array(199, 199, 199),
|
||||
"grey78" => array(199, 199, 199),
|
||||
"gray79" => array(201, 201, 201),
|
||||
"grey79" => array(201, 201, 201),
|
||||
"gray80" => array(204, 204, 204),
|
||||
"grey80" => array(204, 204, 204),
|
||||
"gray81" => array(207, 207, 207),
|
||||
"grey81" => array(207, 207, 207),
|
||||
"gray82" => array(209, 209, 209),
|
||||
"grey82" => array(209, 209, 209),
|
||||
"gray83" => array(212, 212, 212),
|
||||
"grey83" => array(212, 212, 212),
|
||||
"gray84" => array(214, 214, 214),
|
||||
"grey84" => array(214, 214, 214),
|
||||
"gray85" => array(217, 217, 217),
|
||||
"grey85" => array(217, 217, 217),
|
||||
"gray86" => array(219, 219, 219),
|
||||
"grey86" => array(219, 219, 219),
|
||||
"gray87" => array(222, 222, 222),
|
||||
"grey87" => array(222, 222, 222),
|
||||
"gray88" => array(224, 224, 224),
|
||||
"grey88" => array(224, 224, 224),
|
||||
"gray89" => array(227, 227, 227),
|
||||
"grey89" => array(227, 227, 227),
|
||||
"gray90" => array(229, 229, 229),
|
||||
"grey90" => array(229, 229, 229),
|
||||
"gray91" => array(232, 232, 232),
|
||||
"grey91" => array(232, 232, 232),
|
||||
"gray92" => array(235, 235, 235),
|
||||
"grey92" => array(235, 235, 235),
|
||||
"gray93" => array(237, 237, 237),
|
||||
"grey93" => array(237, 237, 237),
|
||||
"gray94" => array(240, 240, 240),
|
||||
"grey94" => array(240, 240, 240),
|
||||
"gray95" => array(242, 242, 242),
|
||||
"grey95" => array(242, 242, 242),
|
||||
"gray96" => array(245, 245, 245),
|
||||
"grey96" => array(245, 245, 245),
|
||||
"gray97" => array(247, 247, 247),
|
||||
"grey97" => array(247, 247, 247),
|
||||
"gray98" => array(250, 250, 250),
|
||||
"grey98" => array(250, 250, 250),
|
||||
"gray99" => array(252, 252, 252),
|
||||
"grey99" => array(252, 252, 252),
|
||||
"gray100" => array(255, 255, 255)
|
||||
);
|
||||
?>
|
||||
@ -1,2 +0,0 @@
|
||||
doc
|
||||
examples
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,340 +0,0 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
||||
@ -1,68 +0,0 @@
|
||||
--------------------------------------------------------------------
|
||||
The PHP License, version 3.0
|
||||
Copyright (c) 1999 - 2003 The PHP Group. All rights reserved.
|
||||
--------------------------------------------------------------------
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, is permitted provided that the following conditions
|
||||
are met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
|
||||
3. The name "PHP" must not be used to endorse or promote products
|
||||
derived from this software without prior written permission. For
|
||||
written permission, please contact group@php.net.
|
||||
|
||||
4. Products derived from this software may not be called "PHP", nor
|
||||
may "PHP" appear in their name, without prior written permission
|
||||
from group@php.net. You may indicate that your software works in
|
||||
conjunction with PHP by saying "Foo for PHP" instead of calling
|
||||
it "PHP Foo" or "phpfoo"
|
||||
|
||||
5. The PHP Group may publish revised and/or new versions of the
|
||||
license from time to time. Each version will be given a
|
||||
distinguishing version number.
|
||||
Once covered code has been published under a particular version
|
||||
of the license, you may always continue to use it under the terms
|
||||
of that version. You may also choose to use such covered code
|
||||
under the terms of any subsequent version of the license
|
||||
published by the PHP Group. No one other than the PHP Group has
|
||||
the right to modify the terms applicable to covered code created
|
||||
under this License.
|
||||
|
||||
6. Redistributions of any form whatsoever must retain the following
|
||||
acknowledgment:
|
||||
"This product includes PHP, freely available from
|
||||
<http://www.php.net/>".
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND
|
||||
ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
||||
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP
|
||||
DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
||||
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
--------------------------------------------------------------------
|
||||
|
||||
This software consists of voluntary contributions made by many
|
||||
individuals on behalf of the PHP Group.
|
||||
|
||||
The PHP Group can be contacted via Email at group@php.net.
|
||||
|
||||
For more information on the PHP Group and the PHP project,
|
||||
please see <http://www.php.net>.
|
||||
|
||||
This product includes the Zend Engine, freely available at
|
||||
<http://www.zend.com>.
|
||||
@ -1,45 +0,0 @@
|
||||
This is a class for creating scientific and business charts.
|
||||
To start extract the files with
|
||||
|
||||
tar zxvf phplot-5.0rc2.tar.gz
|
||||
|
||||
and then point your browser to
|
||||
|
||||
doc/index.php.
|
||||
|
||||
There are some configuration settings that you will need to make
|
||||
based on your setup.
|
||||
|
||||
1. File Type: Depending on the version of GD you are using,
|
||||
you may or may not be able to use GIF or PNG. That is
|
||||
set with the function.
|
||||
|
||||
SetFileFormat("<filetype>") where <filetype> is png, gif, jpeg, ...
|
||||
|
||||
or edit the file phplot.php and change the line
|
||||
|
||||
var $file_format = "<filetype>";
|
||||
|
||||
2. TTF: If you have TTF installed then use (and read the docs)
|
||||
|
||||
SetUseTTF(TRUE);
|
||||
|
||||
otherwise use
|
||||
|
||||
SetUseTTF(FALSE);
|
||||
|
||||
Everything else should be independent of what version you are using.
|
||||
This has been tested with PHP3, PHP4, GD1.2 and GD 3.8.
|
||||
|
||||
To start please see doc/index.php. There you'll find examples, tests and
|
||||
some introductory documents.
|
||||
|
||||
--------------------------
|
||||
|
||||
This is distributed with NO WARRANTY and under the terms of the GNU GPL
|
||||
and PHP licenses. If you use it - a cookie or some credit would be nice.
|
||||
|
||||
You can get a copy of the GNU GPL at http://www.gnu.org/copyleft/gpl.html
|
||||
You can get a copy of the PHP License at http://www.php.net/license.html
|
||||
|
||||
See http://www.sourceforge.net/projects/phplot/ for the latest changes.
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,258 +0,0 @@
|
||||
<?php
|
||||
/* $Id$
|
||||
*
|
||||
* Copyright (C) 2000 Afan Ottenheimer. Released under
|
||||
* the GPL and PHP licenses as stated in the the README file which
|
||||
* should have been included with this document.
|
||||
|
||||
* This is an subclass for phplot.php and should only be
|
||||
* called after phplot.ini has been called. This extends
|
||||
* phplot by adding additional routines that can be used
|
||||
* to modify the data arrays.
|
||||
*
|
||||
* Data must be a *numerical* array, this is enforced in SetDataValues()
|
||||
*/
|
||||
|
||||
require_once("phplot.php");
|
||||
|
||||
class PHPlot_Data extends PHPlot
|
||||
{
|
||||
/*!
|
||||
* Constructor
|
||||
*/
|
||||
function PHPlot_Data($which_width=600, $which_height=400, $which_output_file=NULL, $which_input_file=NULL)
|
||||
{
|
||||
if (! isset($this->img)) {
|
||||
$this->PHPlot($which_width, $which_height, $which_output_file, $which_input_file);
|
||||
}
|
||||
}
|
||||
|
||||
/*!
|
||||
* Will scale all data rows
|
||||
* Maybe later I will do a function that only scales some rows
|
||||
* if $even is TRUE, data will be scaled with "even" factors.
|
||||
* \note Original code by Thiemo Nagel
|
||||
*/
|
||||
function DoScaleData($even, $show_in_legend)
|
||||
{
|
||||
$offset = 0; // We use this not to read labels in text-data
|
||||
|
||||
if ($this->data_type == 'text-data') {
|
||||
$offset = 1;
|
||||
} elseif ($this->data_type != 'data-data') {
|
||||
$this->DrawError('wrong data type!!');
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Determine maxima for each data row in array $max
|
||||
// Put maximum of the maxima in $maxmax
|
||||
$maxmax = 0;
|
||||
for($i=0; $i < $this->num_data_rows; $i++) {
|
||||
$rowsize = count($this->data[$i]);
|
||||
for ($j=$offset; $j < $rowsize; $j++) {
|
||||
if ($this->data[$i][$j] > @ $max[$j])
|
||||
$max[$j] = $this->data[$i][$j];
|
||||
if (@ $max[$j] > $maxmax)
|
||||
$maxmax = $max[$j];
|
||||
}
|
||||
}
|
||||
|
||||
// determine amplification factor $amplify
|
||||
$end = count($max) + $offset;
|
||||
for ($i=$offset; $i < $end; $i++) {
|
||||
if ($max[$i] == 0 || $max[$i] == $maxmax) {
|
||||
$amplify[$i] = 1; // no divide by zero
|
||||
} else {
|
||||
if ($even) {
|
||||
$amp = pow(10,round(log10($maxmax / $max[$i]))-1);
|
||||
if ($amp * $max[$i] * 5 < $maxmax) {
|
||||
$amp *= 5;
|
||||
} elseif ($amp * $max[$i] * 2 < $maxmax) {
|
||||
$amp *= 2;
|
||||
}
|
||||
} else {
|
||||
$amp = $maxmax / $max[$i];
|
||||
$digits = floor(log10($amp));
|
||||
$amp = round($amp/pow(10,$digits-1))*pow(10,$digits-1);
|
||||
}
|
||||
$amplify[$i] = $amp;
|
||||
}
|
||||
if ($amplify[$i] != 1 && $show_in_legend)
|
||||
@ $this->legend[$i] .= "*$amplify[$i]";
|
||||
}
|
||||
|
||||
// Amplify data
|
||||
// On my machine, running 1000 iterations over 1000 rows of 12 elements each,
|
||||
// the for loops were 43.2% faster (MBD)
|
||||
for ($i = 0; $i < $this->num_data_rows; $i++) {
|
||||
$rowsize = count($this->data[$i]);
|
||||
for ($j=$offset; $j < $rowsize; $j++) {
|
||||
$this->data[$i][$j] *= $amplify[$j];
|
||||
}
|
||||
}
|
||||
|
||||
//Re-Scale Vertical Ticks if not already set
|
||||
if ( ! $this->y_tick_increment) {
|
||||
$this->SetYTickIncrement() ;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
} //function DoScaleData
|
||||
|
||||
|
||||
/*!
|
||||
* Computes a moving average of strength $interval for
|
||||
* data row number $datarow, where 0 denotes the first
|
||||
* row of y-data.
|
||||
*
|
||||
* \param int datarow Index of the row whereupon to make calculations
|
||||
* \param int interval Number of elements to use in average ("strength")
|
||||
* \param bool show Whether to tell about the moving average in the legend.
|
||||
* \param string color Color for the line to be drawn. This color is darkened.
|
||||
* Can be named or #RRGGBB.
|
||||
* \param int width Width of the line to be drawn.
|
||||
*
|
||||
* \note Original idea by Theimo Nagel
|
||||
*/
|
||||
function DoMovingAverage($datarow, $interval, $show=TRUE, $color=NULL, $width=NULL)
|
||||
{
|
||||
$off = 1; // Skip record #0 (data label)
|
||||
|
||||
$this->PadArrays();
|
||||
|
||||
if ($interval == 0) {
|
||||
$this->DrawError('DoMovingAverage(): interval can\'t be 0');
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if ($datarow >= $this->records_per_group) {
|
||||
$this->DrawError("DoMovingAverage(): Data row out of bounds ($datarow >= $this->records_per_group)");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if ($this->data_type == 'text-data') {
|
||||
// Ok. No need to set the offset to skip more records.
|
||||
} elseif ($this->data_type == 'data-data') {
|
||||
$off++; // first Y value at $data[][2]
|
||||
} else {
|
||||
$this->DrawError('DoMovingAverage(): wrong data type!!');
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Set color:
|
||||
if ($color) {
|
||||
array_push($this->ndx_data_colors, $this->SetIndexDarkColor($color));
|
||||
} else {
|
||||
array_push($this->ndx_data_colors, $this->SetIndexDarkColor($this->data_colors[$datarow]));
|
||||
}
|
||||
// Set line width:
|
||||
if ($width) {
|
||||
array_push($this->line_widths, $width);
|
||||
} else {
|
||||
array_push($this->line_widths, $this->line_widths[$datarow] * 2);
|
||||
}
|
||||
// Show in legend?
|
||||
if ($show) {
|
||||
$this->legend[$this->records_per_group-1] = "(MA[$datarow]:$interval)";
|
||||
}
|
||||
|
||||
$datarow += $off;
|
||||
for ($i = 0; $i < $this->num_data_rows; $i++) {
|
||||
$storage[$i % $interval] = @ $this->data[$i][$datarow];
|
||||
$ma = array_sum($storage);
|
||||
$ma /= count($storage);
|
||||
array_push($this->data[$i], $ma); // Push the data onto the array
|
||||
$this->num_recs[$i]++; // Tell the drawing functions it is there
|
||||
}
|
||||
$this->records_per_group++;
|
||||
// $this->FindDataLimits();
|
||||
return TRUE;
|
||||
} //function DoMovingAverage()
|
||||
|
||||
|
||||
/**
|
||||
* Computes an exponentially smoothed moving average.
|
||||
* @param int perc "smoothing percentage"
|
||||
* FIXME!!! I haven't checked this.
|
||||
*/
|
||||
function DoExponentialMovingAverage($datarow, $perc, $show_in_legend)
|
||||
{
|
||||
if ($this->data_type == 'text-data') {
|
||||
$datarow++;
|
||||
} elseif ($this->data_type != 'data-data') {
|
||||
$this->DrawError('DoWeightedMovingAverage(): wrong data type!!');
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if ($show_in_legend) {
|
||||
$this->legend[$datarow] .= " (MA: $interval)";
|
||||
}
|
||||
|
||||
$storage[0] = $this->data[0][$datarow];
|
||||
for ($i=1;$i < $this->num_data_rows; $i++) {
|
||||
$storage[$i] = @ $storage[$i-1] + $perc * ($this->data[$i][$datarow] - $storage[$i-1]);
|
||||
$ma = array_sum($storage);
|
||||
$ma /= count($storage);
|
||||
$this->data[$i][$datarow] = $ma;
|
||||
}
|
||||
return TRUE;
|
||||
} // function DoExponentialMovingAverage()
|
||||
|
||||
|
||||
/*!
|
||||
* Removes the DataSet of number $index
|
||||
*/
|
||||
function DoRemoveDataSet($index)
|
||||
{
|
||||
$offset = 1;
|
||||
if ($this->data_type == 'data-data') {
|
||||
$offset++;
|
||||
} elseif ($this->data_type != 'text-data') {
|
||||
$this->DrawError('wrong data type!!');
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
$index += $offset;
|
||||
foreach ($this->data as $key=>$val) {
|
||||
foreach ($val as $key2=>$val2) {
|
||||
if ($key2 >= $index) {
|
||||
if (isset($this->data[$key][$key2+1])) {
|
||||
$this->data[$key][$key2] = $this->data[$key][$key2+1];
|
||||
} else {
|
||||
unset($this->data[$key][$key2]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
} // function DoRemoveDataSet
|
||||
|
||||
|
||||
/*!
|
||||
* Computes row x divided by row y, stores the result in row x
|
||||
* and deletes row y
|
||||
*/
|
||||
function DoDivision($x,$y)
|
||||
{
|
||||
$offset = 1;
|
||||
if ($this->data_type == 'data-data') {
|
||||
$offset++;
|
||||
} elseif ($this->data_type != 'text-data') {
|
||||
$this->DrawError('wrong data type!!');
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
$x += $offset; $y += $offset;
|
||||
reset($this->data);
|
||||
while (list($key, $val) = each($this->data)) {
|
||||
if ($this->data[$key][$y] == 0) {
|
||||
$this->data[$key][$x] = 0;
|
||||
} else {
|
||||
$this->data[$key][$x] /= $this->data[$key][$y];
|
||||
}
|
||||
}
|
||||
|
||||
$this->DoRemoveDataSet($y-$offset);
|
||||
} // function DoDivision
|
||||
|
||||
} // class PHPlot_Data extends PHPlot
|
||||
?>
|
||||
@ -1,744 +0,0 @@
|
||||
<?php
|
||||
//Looking forward to the day when memory is so
|
||||
//plentiful to be able to set gigantic arrays,
|
||||
//we offer this taken from PHPLOT.
|
||||
$ColorArray = array(
|
||||
"snow" => array(255, 250, 250),
|
||||
"ghost white" => array(248, 248, 255),
|
||||
"GhostWhite" => array(248, 248, 255),
|
||||
"white smoke" => array(245, 245, 245),
|
||||
"WhiteSmoke" => array(245, 245, 245),
|
||||
"gainsboro" => array(220, 220, 220),
|
||||
"floral white" => array(255, 250, 240),
|
||||
"FloralWhite" => array(255, 250, 240),
|
||||
"old lace" => array(253, 245, 230),
|
||||
"OldLace" => array(253, 245, 230),
|
||||
"linen" => array(250, 240, 230),
|
||||
"antique white" => array(250, 235, 215),
|
||||
"AntiqueWhite" => array(250, 235, 215),
|
||||
"papaya whip" => array(255, 239, 213),
|
||||
"PapayaWhip" => array(255, 239, 213),
|
||||
"blanched almond" => array(255, 235, 205),
|
||||
"BlanchedAlmond" => array(255, 235, 205),
|
||||
"bisque" => array(255, 228, 196),
|
||||
"peach puff" => array(255, 218, 185),
|
||||
"PeachPuff" => array(255, 218, 185),
|
||||
"navajo white" => array(255, 222, 173),
|
||||
"NavajoWhite" => array(255, 222, 173),
|
||||
"moccasin" => array(255, 228, 181),
|
||||
"cornsilk" => array(255, 248, 220),
|
||||
"ivory" => array(255, 255, 240),
|
||||
"lemon chiffon" => array(255, 250, 205),
|
||||
"LemonChiffon" => array(255, 250, 205),
|
||||
"seashell" => array(255, 245, 238),
|
||||
"honeydew" => array(240, 255, 240),
|
||||
"mint cream" => array(245, 255, 250),
|
||||
"MintCream" => array(245, 255, 250),
|
||||
"azure" => array(240, 255, 255),
|
||||
"alice blue" => array(240, 248, 255),
|
||||
"AliceBlue" => array(240, 248, 255),
|
||||
"lavender" => array(230, 230, 250),
|
||||
"lavender blush" => array(255, 240, 245),
|
||||
"LavenderBlush" => array(255, 240, 245),
|
||||
"misty rose" => array(255, 228, 225),
|
||||
"MistyRose" => array(255, 228, 225),
|
||||
"white" => array(255, 255, 255),
|
||||
"black" => array( 0, 0, 0),
|
||||
"dark slate gray" => array( 47, 79, 79),
|
||||
"DarkSlateGray" => array( 47, 79, 79),
|
||||
"dark slate grey" => array( 47, 79, 79),
|
||||
"DarkSlateGrey" => array( 47, 79, 79),
|
||||
"dim gray" => array(105, 105, 105),
|
||||
"DimGray" => array(105, 105, 105),
|
||||
"dim grey" => array(105, 105, 105),
|
||||
"DimGrey" => array(105, 105, 105),
|
||||
"slate gray" => array(112, 128, 144),
|
||||
"SlateGray" => array(112, 128, 144),
|
||||
"slate grey" => array(112, 128, 144),
|
||||
"SlateGrey" => array(112, 128, 144),
|
||||
"light slate gray" => array(119, 136, 153),
|
||||
"LightSlateGray" => array(119, 136, 153),
|
||||
"light slate grey" => array(119, 136, 153),
|
||||
"LightSlateGrey" => array(119, 136, 153),
|
||||
"gray" => array(190, 190, 190),
|
||||
"grey" => array(190, 190, 190),
|
||||
"light grey" => array(211, 211, 211),
|
||||
"LightGrey" => array(211, 211, 211),
|
||||
"light gray" => array(211, 211, 211),
|
||||
"LightGray" => array(211, 211, 211),
|
||||
"midnight blue" => array( 25, 25, 112),
|
||||
"MidnightBlue" => array( 25, 25, 112),
|
||||
"navy" => array( 0, 0, 128),
|
||||
"navy blue" => array( 0, 0, 128),
|
||||
"NavyBlue" => array( 0, 0, 128),
|
||||
"cornflower blue" => array(100, 149, 237),
|
||||
"CornflowerBlue" => array(100, 149, 237),
|
||||
"dark slate blue" => array( 72, 61, 139),
|
||||
"DarkSlateBlue" => array( 72, 61, 139),
|
||||
"slate blue" => array(106, 90, 205),
|
||||
"SlateBlue" => array(106, 90, 205),
|
||||
"medium slate blue" => array(123, 104, 238),
|
||||
"MediumSlateBlue" => array(123, 104, 238),
|
||||
"light slate blue" => array(132, 112, 255),
|
||||
"LightSlateBlue" => array(132, 112, 255),
|
||||
"medium blue" => array( 0, 0, 205),
|
||||
"MediumBlue" => array( 0, 0, 205),
|
||||
"royal blue" => array( 65, 105, 225),
|
||||
"RoyalBlue" => array( 65, 105, 225),
|
||||
"blue" => array( 0, 0, 255),
|
||||
"dodger blue" => array( 30, 144, 255),
|
||||
"DodgerBlue" => array( 30, 144, 255),
|
||||
"deep sky blue" => array( 0, 191, 255),
|
||||
"DeepSkyBlue" => array( 0, 191, 255),
|
||||
"sky blue" => array(135, 206, 235),
|
||||
"SkyBlue" => array(135, 206, 235),
|
||||
"light sky blue" => array(135, 206, 250),
|
||||
"LightSkyBlue" => array(135, 206, 250),
|
||||
"steel blue" => array( 70, 130, 180),
|
||||
"SteelBlue" => array( 70, 130, 180),
|
||||
"light steel blue" => array(176, 196, 222),
|
||||
"LightSteelBlue" => array(176, 196, 222),
|
||||
"light blue" => array(173, 216, 230),
|
||||
"LightBlue" => array(173, 216, 230),
|
||||
"powder blue" => array(176, 224, 230),
|
||||
"PowderBlue" => array(176, 224, 230),
|
||||
"pale turquoise" => array(175, 238, 238),
|
||||
"PaleTurquoise" => array(175, 238, 238),
|
||||
"dark turquoise" => array( 0, 206, 209),
|
||||
"DarkTurquoise" => array( 0, 206, 209),
|
||||
"medium turquoise" => array( 72, 209, 204),
|
||||
"MediumTurquoise" => array( 72, 209, 204),
|
||||
"turquoise" => array( 64, 224, 208),
|
||||
"cyan" => array( 0, 255, 255),
|
||||
"light cyan" => array(224, 255, 255),
|
||||
"LightCyan" => array(224, 255, 255),
|
||||
"cadet blue" => array( 95, 158, 160),
|
||||
"CadetBlue" => array( 95, 158, 160),
|
||||
"medium aquamarine" => array(102, 205, 170),
|
||||
"MediumAquamarine" => array(102, 205, 170),
|
||||
"aquamarine" => array(127, 255, 212),
|
||||
"dark green" => array( 0, 100, 0),
|
||||
"DarkGreen" => array( 0, 100, 0),
|
||||
"dark olive green" => array( 85, 107, 47),
|
||||
"DarkOliveGreen" => array( 85, 107, 47),
|
||||
"dark sea green" => array(143, 188, 143),
|
||||
"DarkSeaGreen" => array(143, 188, 143),
|
||||
"sea green" => array( 46, 139, 87),
|
||||
"SeaGreen" => array( 46, 139, 87),
|
||||
"medium sea green" => array( 60, 179, 113),
|
||||
"MediumSeaGreen" => array( 60, 179, 113),
|
||||
"light sea green" => array( 32, 178, 170),
|
||||
"LightSeaGreen" => array( 32, 178, 170),
|
||||
"pale green" => array(152, 251, 152),
|
||||
"PaleGreen" => array(152, 251, 152),
|
||||
"spring green" => array( 0, 255, 127),
|
||||
"SpringGreen" => array( 0, 255, 127),
|
||||
"lawn green" => array(124, 252, 0),
|
||||
"LawnGreen" => array(124, 252, 0),
|
||||
"green" => array( 0, 255, 0),
|
||||
"chartreuse" => array(127, 255, 0),
|
||||
"medium spring green" => array( 0, 250, 154),
|
||||
"MediumSpringGreen" => array( 0, 250, 154),
|
||||
"green yellow" => array(173, 255, 47),
|
||||
"GreenYellow" => array(173, 255, 47),
|
||||
"lime green" => array( 50, 205, 50),
|
||||
"LimeGreen" => array( 50, 205, 50),
|
||||
"yellow green" => array(154, 205, 50),
|
||||
"YellowGreen" => array(154, 205, 50),
|
||||
"forest green" => array( 34, 139, 34),
|
||||
"ForestGreen" => array( 34, 139, 34),
|
||||
"olive drab" => array(107, 142, 35),
|
||||
"OliveDrab" => array(107, 142, 35),
|
||||
"dark khaki" => array(189, 183, 107),
|
||||
"DarkKhaki" => array(189, 183, 107),
|
||||
"khaki" => array(240, 230, 140),
|
||||
"pale goldenrod" => array(238, 232, 170),
|
||||
"PaleGoldenrod" => array(238, 232, 170),
|
||||
"light goldenrod yellow" => array(250, 250, 210),
|
||||
"LightGoldenrodYellow" => array(250, 250, 210),
|
||||
"light yellow" => array(255, 255, 224),
|
||||
"LightYellow" => array(255, 255, 224),
|
||||
"yellow" => array(255, 255, 0),
|
||||
"gold" => array(255, 215, 0),
|
||||
"light goldenrod" => array(238, 221, 130),
|
||||
"LightGoldenrod" => array(238, 221, 130),
|
||||
"goldenrod" => array(218, 165, 32),
|
||||
"dark goldenrod" => array(184, 134, 11),
|
||||
"DarkGoldenrod" => array(184, 134, 11),
|
||||
"rosy brown" => array(188, 143, 143),
|
||||
"RosyBrown" => array(188, 143, 143),
|
||||
"indian red" => array(205, 92, 92),
|
||||
"IndianRed" => array(205, 92, 92),
|
||||
"saddle brown" => array(139, 69, 19),
|
||||
"SaddleBrown" => array(139, 69, 19),
|
||||
"sienna" => array(160, 82, 45),
|
||||
"peru" => array(205, 133, 63),
|
||||
"burlywood" => array(222, 184, 135),
|
||||
"beige" => array(245, 245, 220),
|
||||
"wheat" => array(245, 222, 179),
|
||||
"sandy brown" => array(244, 164, 96),
|
||||
"SandyBrown" => array(244, 164, 96),
|
||||
"tan" => array(210, 180, 140),
|
||||
"chocolate" => array(210, 105, 30),
|
||||
"firebrick" => array(178, 34, 34),
|
||||
"brown" => array(165, 42, 42),
|
||||
"dark salmon" => array(233, 150, 122),
|
||||
"DarkSalmon" => array(233, 150, 122),
|
||||
"salmon" => array(250, 128, 114),
|
||||
"light salmon" => array(255, 160, 122),
|
||||
"LightSalmon" => array(255, 160, 122),
|
||||
"orange" => array(255, 165, 0),
|
||||
"dark orange" => array(255, 140, 0),
|
||||
"DarkOrange" => array(255, 140, 0),
|
||||
"coral" => array(255, 127, 80),
|
||||
"light coral" => array(240, 128, 128),
|
||||
"LightCoral" => array(240, 128, 128),
|
||||
"tomato" => array(255, 99, 71),
|
||||
"orange red" => array(255, 69, 0),
|
||||
"OrangeRed" => array(255, 69, 0),
|
||||
"red" => array(255, 0, 0),
|
||||
"hot pink" => array(255, 105, 180),
|
||||
"HotPink" => array(255, 105, 180),
|
||||
"deep pink" => array(255, 20, 147),
|
||||
"DeepPink" => array(255, 20, 147),
|
||||
"pink" => array(255, 192, 203),
|
||||
"light pink" => array(255, 182, 193),
|
||||
"LightPink" => array(255, 182, 193),
|
||||
"pale violet red" => array(219, 112, 147),
|
||||
"PaleVioletRed" => array(219, 112, 147),
|
||||
"maroon" => array(176, 48, 96),
|
||||
"medium violet red" => array(199, 21, 133),
|
||||
"MediumVioletRed" => array(199, 21, 133),
|
||||
"violet red" => array(208, 32, 144),
|
||||
"VioletRed" => array(208, 32, 144),
|
||||
"magenta" => array(255, 0, 255),
|
||||
"violet" => array(238, 130, 238),
|
||||
"plum" => array(221, 160, 221),
|
||||
"orchid" => array(218, 112, 214),
|
||||
"medium orchid" => array(186, 85, 211),
|
||||
"MediumOrchid" => array(186, 85, 211),
|
||||
"dark orchid" => array(153, 50, 204),
|
||||
"DarkOrchid" => array(153, 50, 204),
|
||||
"dark violet" => array(148, 0, 211),
|
||||
"DarkViolet" => array(148, 0, 211),
|
||||
"blue violet" => array(138, 43, 226),
|
||||
"BlueViolet" => array(138, 43, 226),
|
||||
"purple" => array(160, 32, 240),
|
||||
"medium purple" => array(147, 112, 219),
|
||||
"MediumPurple" => array(147, 112, 219),
|
||||
"thistle" => array(216, 191, 216),
|
||||
"snow1" => array(255, 250, 250),
|
||||
"snow2" => array(238, 233, 233),
|
||||
"snow3" => array(205, 201, 201),
|
||||
"snow4" => array(139, 137, 137),
|
||||
"seashell1" => array(255, 245, 238),
|
||||
"seashell2" => array(238, 229, 222),
|
||||
"seashell3" => array(205, 197, 191),
|
||||
"seashell4" => array(139, 134, 130),
|
||||
"AntiqueWhite1" => array(255, 239, 219),
|
||||
"AntiqueWhite2" => array(238, 223, 204),
|
||||
"AntiqueWhite3" => array(205, 192, 176),
|
||||
"AntiqueWhite4" => array(139, 131, 120),
|
||||
"bisque1" => array(255, 228, 196),
|
||||
"bisque2" => array(238, 213, 183),
|
||||
"bisque3" => array(205, 183, 158),
|
||||
"bisque4" => array(139, 125, 107),
|
||||
"PeachPuff1" => array(255, 218, 185),
|
||||
"PeachPuff2" => array(238, 203, 173),
|
||||
"PeachPuff3" => array(205, 175, 149),
|
||||
"PeachPuff4" => array(139, 119, 101),
|
||||
"NavajoWhite1" => array(255, 222, 173),
|
||||
"NavajoWhite2" => array(238, 207, 161),
|
||||
"NavajoWhite3" => array(205, 179, 139),
|
||||
"NavajoWhite4" => array(139, 121, 94),
|
||||
"LemonChiffon1" => array(255, 250, 205),
|
||||
"LemonChiffon2" => array(238, 233, 191),
|
||||
"LemonChiffon3" => array(205, 201, 165),
|
||||
"LemonChiffon4" => array(139, 137, 112),
|
||||
"cornsilk1" => array(255, 248, 220),
|
||||
"cornsilk2" => array(238, 232, 205),
|
||||
"cornsilk3" => array(205, 200, 177),
|
||||
"cornsilk4" => array(139, 136, 120),
|
||||
"ivory1" => array(255, 255, 240),
|
||||
"ivory2" => array(238, 238, 224),
|
||||
"ivory3" => array(205, 205, 193),
|
||||
"ivory4" => array(139, 139, 131),
|
||||
"honeydew1" => array(240, 255, 240),
|
||||
"honeydew2" => array(224, 238, 224),
|
||||
"honeydew3" => array(193, 205, 193),
|
||||
"honeydew4" => array(131, 139, 131),
|
||||
"LavenderBlush1" => array(255, 240, 245),
|
||||
"LavenderBlush2" => array(238, 224, 229),
|
||||
"LavenderBlush3" => array(205, 193, 197),
|
||||
"LavenderBlush4" => array(139, 131, 134),
|
||||
"MistyRose1" => array(255, 228, 225),
|
||||
"MistyRose2" => array(238, 213, 210),
|
||||
"MistyRose3" => array(205, 183, 181),
|
||||
"MistyRose4" => array(139, 125, 123),
|
||||
"azure1" => array(240, 255, 255),
|
||||
"azure2" => array(224, 238, 238),
|
||||
"azure3" => array(193, 205, 205),
|
||||
"azure4" => array(131, 139, 139),
|
||||
"SlateBlue1" => array(131, 111, 255),
|
||||
"SlateBlue2" => array(122, 103, 238),
|
||||
"SlateBlue3" => array(105, 89, 205),
|
||||
"SlateBlue4" => array( 71, 60, 139),
|
||||
"RoyalBlue1" => array( 72, 118, 255),
|
||||
"RoyalBlue2" => array( 67, 110, 238),
|
||||
"RoyalBlue3" => array( 58, 95, 205),
|
||||
"RoyalBlue4" => array( 39, 64, 139),
|
||||
"blue1" => array( 0, 0, 255),
|
||||
"blue2" => array( 0, 0, 238),
|
||||
"blue3" => array( 0, 0, 205),
|
||||
"blue4" => array( 0, 0, 139),
|
||||
"DodgerBlue1" => array( 30, 144, 255),
|
||||
"DodgerBlue2" => array( 28, 134, 238),
|
||||
"DodgerBlue3" => array( 24, 116, 205),
|
||||
"DodgerBlue4" => array( 16, 78, 139),
|
||||
"SteelBlue1" => array( 99, 184, 255),
|
||||
"SteelBlue2" => array( 92, 172, 238),
|
||||
"SteelBlue3" => array( 79, 148, 205),
|
||||
"SteelBlue4" => array( 54, 100, 139),
|
||||
"DeepSkyBlue1" => array( 0, 191, 255),
|
||||
"DeepSkyBlue2" => array( 0, 178, 238),
|
||||
"DeepSkyBlue3" => array( 0, 154, 205),
|
||||
"DeepSkyBlue4" => array( 0, 104, 139),
|
||||
"SkyBlue1" => array(135, 206, 255),
|
||||
"SkyBlue2" => array(126, 192, 238),
|
||||
"SkyBlue3" => array(108, 166, 205),
|
||||
"SkyBlue4" => array( 74, 112, 139),
|
||||
"LightSkyBlue1" => array(176, 226, 255),
|
||||
"LightSkyBlue2" => array(164, 211, 238),
|
||||
"LightSkyBlue3" => array(141, 182, 205),
|
||||
"LightSkyBlue4" => array( 96, 123, 139),
|
||||
"SlateGray1" => array(198, 226, 255),
|
||||
"SlateGray2" => array(185, 211, 238),
|
||||
"SlateGray3" => array(159, 182, 205),
|
||||
"SlateGray4" => array(108, 123, 139),
|
||||
"LightSteelBlue1" => array(202, 225, 255),
|
||||
"LightSteelBlue2" => array(188, 210, 238),
|
||||
"LightSteelBlue3" => array(162, 181, 205),
|
||||
"LightSteelBlue4" => array(110, 123, 139),
|
||||
"LightBlue1" => array(191, 239, 255),
|
||||
"LightBlue2" => array(178, 223, 238),
|
||||
"LightBlue3" => array(154, 192, 205),
|
||||
"LightBlue4" => array(104, 131, 139),
|
||||
"LightCyan1" => array(224, 255, 255),
|
||||
"LightCyan2" => array(209, 238, 238),
|
||||
"LightCyan3" => array(180, 205, 205),
|
||||
"LightCyan4" => array(122, 139, 139),
|
||||
"PaleTurquoise1" => array(187, 255, 255),
|
||||
"PaleTurquoise2" => array(174, 238, 238),
|
||||
"PaleTurquoise3" => array(150, 205, 205),
|
||||
"PaleTurquoise4" => array(102, 139, 139),
|
||||
"CadetBlue1" => array(152, 245, 255),
|
||||
"CadetBlue2" => array(142, 229, 238),
|
||||
"CadetBlue3" => array(122, 197, 205),
|
||||
"CadetBlue4" => array( 83, 134, 139),
|
||||
"turquoise1" => array( 0, 245, 255),
|
||||
"turquoise2" => array( 0, 229, 238),
|
||||
"turquoise3" => array( 0, 197, 205),
|
||||
"turquoise4" => array( 0, 134, 139),
|
||||
"cyan1" => array( 0, 255, 255),
|
||||
"cyan2" => array( 0, 238, 238),
|
||||
"cyan3" => array( 0, 205, 205),
|
||||
"cyan4" => array( 0, 139, 139),
|
||||
"DarkSlateGray1" => array(151, 255, 255),
|
||||
"DarkSlateGray2" => array(141, 238, 238),
|
||||
"DarkSlateGray3" => array(121, 205, 205),
|
||||
"DarkSlateGray4" => array( 82, 139, 139),
|
||||
"aquamarine1" => array(127, 255, 212),
|
||||
"aquamarine2" => array(118, 238, 198),
|
||||
"aquamarine3" => array(102, 205, 170),
|
||||
"aquamarine4" => array( 69, 139, 116),
|
||||
"DarkSeaGreen1" => array(193, 255, 193),
|
||||
"DarkSeaGreen2" => array(180, 238, 180),
|
||||
"DarkSeaGreen3" => array(155, 205, 155),
|
||||
"DarkSeaGreen4" => array(105, 139, 105),
|
||||
"SeaGreen1" => array( 84, 255, 159),
|
||||
"SeaGreen2" => array( 78, 238, 148),
|
||||
"SeaGreen3" => array( 67, 205, 128),
|
||||
"SeaGreen4" => array( 46, 139, 87),
|
||||
"PaleGreen1" => array(154, 255, 154),
|
||||
"PaleGreen2" => array(144, 238, 144),
|
||||
"PaleGreen3" => array(124, 205, 124),
|
||||
"PaleGreen4" => array( 84, 139, 84),
|
||||
"SpringGreen1" => array( 0, 255, 127),
|
||||
"SpringGreen2" => array( 0, 238, 118),
|
||||
"SpringGreen3" => array( 0, 205, 102),
|
||||
"SpringGreen4" => array( 0, 139, 69),
|
||||
"green1" => array( 0, 255, 0),
|
||||
"green2" => array( 0, 238, 0),
|
||||
"green3" => array( 0, 205, 0),
|
||||
"green4" => array( 0, 139, 0),
|
||||
"chartreuse1" => array(127, 255, 0),
|
||||
"chartreuse2" => array(118, 238, 0),
|
||||
"chartreuse3" => array(102, 205, 0),
|
||||
"chartreuse4" => array( 69, 139, 0),
|
||||
"OliveDrab1" => array(192, 255, 62),
|
||||
"OliveDrab2" => array(179, 238, 58),
|
||||
"OliveDrab3" => array(154, 205, 50),
|
||||
"OliveDrab4" => array(105, 139, 34),
|
||||
"DarkOliveGreen1" => array(202, 255, 112),
|
||||
"DarkOliveGreen2" => array(188, 238, 104),
|
||||
"DarkOliveGreen3" => array(162, 205, 90),
|
||||
"DarkOliveGreen4" => array(110, 139, 61),
|
||||
"khaki1" => array(255, 246, 143),
|
||||
"khaki2" => array(238, 230, 133),
|
||||
"khaki3" => array(205, 198, 115),
|
||||
"khaki4" => array(139, 134, 78),
|
||||
"LightGoldenrod1" => array(255, 236, 139),
|
||||
"LightGoldenrod2" => array(238, 220, 130),
|
||||
"LightGoldenrod3" => array(205, 190, 112),
|
||||
"LightGoldenrod4" => array(139, 129, 76),
|
||||
"LightYellow1" => array(255, 255, 224),
|
||||
"LightYellow2" => array(238, 238, 209),
|
||||
"LightYellow3" => array(205, 205, 180),
|
||||
"LightYellow4" => array(139, 139, 122),
|
||||
"yellow1" => array(255, 255, 0),
|
||||
"yellow2" => array(238, 238, 0),
|
||||
"yellow3" => array(205, 205, 0),
|
||||
"yellow4" => array(139, 139, 0),
|
||||
"gold1" => array(255, 215, 0),
|
||||
"gold2" => array(238, 201, 0),
|
||||
"gold3" => array(205, 173, 0),
|
||||
"gold4" => array(139, 117, 0),
|
||||
"goldenrod1" => array(255, 193, 37),
|
||||
"goldenrod2" => array(238, 180, 34),
|
||||
"goldenrod3" => array(205, 155, 29),
|
||||
"goldenrod4" => array(139, 105, 20),
|
||||
"DarkGoldenrod1" => array(255, 185, 15),
|
||||
"DarkGoldenrod2" => array(238, 173, 14),
|
||||
"DarkGoldenrod3" => array(205, 149, 12),
|
||||
"DarkGoldenrod4" => array(139, 101, 8),
|
||||
"RosyBrown1" => array(255, 193, 193),
|
||||
"RosyBrown2" => array(238, 180, 180),
|
||||
"RosyBrown3" => array(205, 155, 155),
|
||||
"RosyBrown4" => array(139, 105, 105),
|
||||
"IndianRed1" => array(255, 106, 106),
|
||||
"IndianRed2" => array(238, 99, 99),
|
||||
"IndianRed3" => array(205, 85, 85),
|
||||
"IndianRed4" => array(139, 58, 58),
|
||||
"sienna1" => array(255, 130, 71),
|
||||
"sienna2" => array(238, 121, 66),
|
||||
"sienna3" => array(205, 104, 57),
|
||||
"sienna4" => array(139, 71, 38),
|
||||
"burlywood1" => array(255, 211, 155),
|
||||
"burlywood2" => array(238, 197, 145),
|
||||
"burlywood3" => array(205, 170, 125),
|
||||
"burlywood4" => array(139, 115, 85),
|
||||
"wheat1" => array(255, 231, 186),
|
||||
"wheat2" => array(238, 216, 174),
|
||||
"wheat3" => array(205, 186, 150),
|
||||
"wheat4" => array(139, 126, 102),
|
||||
"tan1" => array(255, 165, 79),
|
||||
"tan2" => array(238, 154, 73),
|
||||
"tan3" => array(205, 133, 63),
|
||||
"tan4" => array(139, 90, 43),
|
||||
"chocolate1" => array(255, 127, 36),
|
||||
"chocolate2" => array(238, 118, 33),
|
||||
"chocolate3" => array(205, 102, 29),
|
||||
"chocolate4" => array(139, 69, 19),
|
||||
"firebrick1" => array(255, 48, 48),
|
||||
"firebrick2" => array(238, 44, 44),
|
||||
"firebrick3" => array(205, 38, 38),
|
||||
"firebrick4" => array(139, 26, 26),
|
||||
"brown1" => array(255, 64, 64),
|
||||
"brown2" => array(238, 59, 59),
|
||||
"brown3" => array(205, 51, 51),
|
||||
"brown4" => array(139, 35, 35),
|
||||
"salmon1" => array(255, 140, 105),
|
||||
"salmon2" => array(238, 130, 98),
|
||||
"salmon3" => array(205, 112, 84),
|
||||
"salmon4" => array(139, 76, 57),
|
||||
"LightSalmon1" => array(255, 160, 122),
|
||||
"LightSalmon2" => array(238, 149, 114),
|
||||
"LightSalmon3" => array(205, 129, 98),
|
||||
"LightSalmon4" => array(139, 87, 66),
|
||||
"orange1" => array(255, 165, 0),
|
||||
"orange2" => array(238, 154, 0),
|
||||
"orange3" => array(205, 133, 0),
|
||||
"orange4" => array(139, 90, 0),
|
||||
"DarkOrange1" => array(255, 127, 0),
|
||||
"DarkOrange2" => array(238, 118, 0),
|
||||
"DarkOrange3" => array(205, 102, 0),
|
||||
"DarkOrange4" => array(139, 69, 0),
|
||||
"coral1" => array(255, 114, 86),
|
||||
"coral2" => array(238, 106, 80),
|
||||
"coral3" => array(205, 91, 69),
|
||||
"coral4" => array(139, 62, 47),
|
||||
"tomato1" => array(255, 99, 71),
|
||||
"tomato2" => array(238, 92, 66),
|
||||
"tomato3" => array(205, 79, 57),
|
||||
"tomato4" => array(139, 54, 38),
|
||||
"OrangeRed1" => array(255, 69, 0),
|
||||
"OrangeRed2" => array(238, 64, 0),
|
||||
"OrangeRed3" => array(205, 55, 0),
|
||||
"OrangeRed4" => array(139, 37, 0),
|
||||
"red1" => array(255, 0, 0),
|
||||
"red2" => array(238, 0, 0),
|
||||
"red3" => array(205, 0, 0),
|
||||
"red4" => array(139, 0, 0),
|
||||
"DeepPink1" => array(255, 20, 147),
|
||||
"DeepPink2" => array(238, 18, 137),
|
||||
"DeepPink3" => array(205, 16, 118),
|
||||
"DeepPink4" => array(139, 10, 80),
|
||||
"HotPink1" => array(255, 110, 180),
|
||||
"HotPink2" => array(238, 106, 167),
|
||||
"HotPink3" => array(205, 96, 144),
|
||||
"HotPink4" => array(139, 58, 98),
|
||||
"pink1" => array(255, 181, 197),
|
||||
"pink2" => array(238, 169, 184),
|
||||
"pink3" => array(205, 145, 158),
|
||||
"pink4" => array(139, 99, 108),
|
||||
"LightPink1" => array(255, 174, 185),
|
||||
"LightPink2" => array(238, 162, 173),
|
||||
"LightPink3" => array(205, 140, 149),
|
||||
"LightPink4" => array(139, 95, 101),
|
||||
"PaleVioletRed1" => array(255, 130, 171),
|
||||
"PaleVioletRed2" => array(238, 121, 159),
|
||||
"PaleVioletRed3" => array(205, 104, 137),
|
||||
"PaleVioletRed4" => array(139, 71, 93),
|
||||
"maroon1" => array(255, 52, 179),
|
||||
"maroon2" => array(238, 48, 167),
|
||||
"maroon3" => array(205, 41, 144),
|
||||
"maroon4" => array(139, 28, 98),
|
||||
"VioletRed1" => array(255, 62, 150),
|
||||
"VioletRed2" => array(238, 58, 140),
|
||||
"VioletRed3" => array(205, 50, 120),
|
||||
"VioletRed4" => array(139, 34, 82),
|
||||
"magenta1" => array(255, 0, 255),
|
||||
"magenta2" => array(238, 0, 238),
|
||||
"magenta3" => array(205, 0, 205),
|
||||
"magenta4" => array(139, 0, 139),
|
||||
"orchid1" => array(255, 131, 250),
|
||||
"orchid2" => array(238, 122, 233),
|
||||
"orchid3" => array(205, 105, 201),
|
||||
"orchid4" => array(139, 71, 137),
|
||||
"plum1" => array(255, 187, 255),
|
||||
"plum2" => array(238, 174, 238),
|
||||
"plum3" => array(205, 150, 205),
|
||||
"plum4" => array(139, 102, 139),
|
||||
"MediumOrchid1" => array(224, 102, 255),
|
||||
"MediumOrchid2" => array(209, 95, 238),
|
||||
"MediumOrchid3" => array(180, 82, 205),
|
||||
"MediumOrchid4" => array(122, 55, 139),
|
||||
"DarkOrchid1" => array(191, 62, 255),
|
||||
"DarkOrchid2" => array(178, 58, 238),
|
||||
"DarkOrchid3" => array(154, 50, 205),
|
||||
"DarkOrchid4" => array(104, 34, 139),
|
||||
"purple1" => array(155, 48, 255),
|
||||
"purple2" => array(145, 44, 238),
|
||||
"purple3" => array(125, 38, 205),
|
||||
"purple4" => array( 85, 26, 139),
|
||||
"MediumPurple1" => array(171, 130, 255),
|
||||
"MediumPurple2" => array(159, 121, 238),
|
||||
"MediumPurple3" => array(137, 104, 205),
|
||||
"MediumPurple4" => array( 93, 71, 139),
|
||||
"thistle1" => array(255, 225, 255),
|
||||
"thistle2" => array(238, 210, 238),
|
||||
"thistle3" => array(205, 181, 205),
|
||||
"thistle4" => array(139, 123, 139),
|
||||
"gray0" => array( 0, 0, 0),
|
||||
"grey0" => array( 0, 0, 0),
|
||||
"gray1" => array( 3, 3, 3),
|
||||
"grey1" => array( 3, 3, 3),
|
||||
"gray2" => array( 5, 5, 5),
|
||||
"grey2" => array( 5, 5, 5),
|
||||
"gray3" => array( 8, 8, 8),
|
||||
"grey3" => array( 8, 8, 8),
|
||||
"gray4" => array( 10, 10, 10),
|
||||
"grey4" => array( 10, 10, 10),
|
||||
"gray5" => array( 13, 13, 13),
|
||||
"grey5" => array( 13, 13, 13),
|
||||
"gray6" => array( 15, 15, 15),
|
||||
"grey6" => array( 15, 15, 15),
|
||||
"gray7" => array( 18, 18, 18),
|
||||
"grey7" => array( 18, 18, 18),
|
||||
"gray8" => array( 20, 20, 20),
|
||||
"grey8" => array( 20, 20, 20),
|
||||
"gray9" => array( 23, 23, 23),
|
||||
"grey9" => array( 23, 23, 23),
|
||||
"gray10" => array( 26, 26, 26),
|
||||
"grey10" => array( 26, 26, 26),
|
||||
"gray11" => array( 28, 28, 28),
|
||||
"grey11" => array( 28, 28, 28),
|
||||
"gray12" => array( 31, 31, 31),
|
||||
"grey12" => array( 31, 31, 31),
|
||||
"gray13" => array( 33, 33, 33),
|
||||
"grey13" => array( 33, 33, 33),
|
||||
"gray14" => array( 36, 36, 36),
|
||||
"grey14" => array( 36, 36, 36),
|
||||
"gray15" => array( 38, 38, 38),
|
||||
"grey15" => array( 38, 38, 38),
|
||||
"gray16" => array( 41, 41, 41),
|
||||
"grey16" => array( 41, 41, 41),
|
||||
"gray17" => array( 43, 43, 43),
|
||||
"grey17" => array( 43, 43, 43),
|
||||
"gray18" => array( 46, 46, 46),
|
||||
"grey18" => array( 46, 46, 46),
|
||||
"gray19" => array( 48, 48, 48),
|
||||
"grey19" => array( 48, 48, 48),
|
||||
"gray20" => array( 51, 51, 51),
|
||||
"grey20" => array( 51, 51, 51),
|
||||
"gray21" => array( 54, 54, 54),
|
||||
"grey21" => array( 54, 54, 54),
|
||||
"gray22" => array( 56, 56, 56),
|
||||
"grey22" => array( 56, 56, 56),
|
||||
"gray23" => array( 59, 59, 59),
|
||||
"grey23" => array( 59, 59, 59),
|
||||
"gray24" => array( 61, 61, 61),
|
||||
"grey24" => array( 61, 61, 61),
|
||||
"gray25" => array( 64, 64, 64),
|
||||
"grey25" => array( 64, 64, 64),
|
||||
"gray26" => array( 66, 66, 66),
|
||||
"grey26" => array( 66, 66, 66),
|
||||
"gray27" => array( 69, 69, 69),
|
||||
"grey27" => array( 69, 69, 69),
|
||||
"gray28" => array( 71, 71, 71),
|
||||
"grey28" => array( 71, 71, 71),
|
||||
"gray29" => array( 74, 74, 74),
|
||||
"grey29" => array( 74, 74, 74),
|
||||
"gray30" => array( 77, 77, 77),
|
||||
"grey30" => array( 77, 77, 77),
|
||||
"gray31" => array( 79, 79, 79),
|
||||
"grey31" => array( 79, 79, 79),
|
||||
"gray32" => array( 82, 82, 82),
|
||||
"grey32" => array( 82, 82, 82),
|
||||
"gray33" => array( 84, 84, 84),
|
||||
"grey33" => array( 84, 84, 84),
|
||||
"gray34" => array( 87, 87, 87),
|
||||
"grey34" => array( 87, 87, 87),
|
||||
"gray35" => array( 89, 89, 89),
|
||||
"grey35" => array( 89, 89, 89),
|
||||
"gray36" => array( 92, 92, 92),
|
||||
"grey36" => array( 92, 92, 92),
|
||||
"gray37" => array( 94, 94, 94),
|
||||
"grey37" => array( 94, 94, 94),
|
||||
"gray38" => array( 97, 97, 97),
|
||||
"grey38" => array( 97, 97, 97),
|
||||
"gray39" => array( 99, 99, 99),
|
||||
"grey39" => array( 99, 99, 99),
|
||||
"gray40" => array(102, 102, 102),
|
||||
"grey40" => array(102, 102, 102),
|
||||
"gray41" => array(105, 105, 105),
|
||||
"grey41" => array(105, 105, 105),
|
||||
"gray42" => array(107, 107, 107),
|
||||
"grey42" => array(107, 107, 107),
|
||||
"gray43" => array(110, 110, 110),
|
||||
"grey43" => array(110, 110, 110),
|
||||
"gray44" => array(112, 112, 112),
|
||||
"grey44" => array(112, 112, 112),
|
||||
"gray45" => array(115, 115, 115),
|
||||
"grey45" => array(115, 115, 115),
|
||||
"gray46" => array(117, 117, 117),
|
||||
"grey46" => array(117, 117, 117),
|
||||
"gray47" => array(120, 120, 120),
|
||||
"grey47" => array(120, 120, 120),
|
||||
"gray48" => array(122, 122, 122),
|
||||
"grey48" => array(122, 122, 122),
|
||||
"gray49" => array(125, 125, 125),
|
||||
"grey49" => array(125, 125, 125),
|
||||
"gray50" => array(127, 127, 127),
|
||||
"grey50" => array(127, 127, 127),
|
||||
"gray51" => array(130, 130, 130),
|
||||
"grey51" => array(130, 130, 130),
|
||||
"gray52" => array(133, 133, 133),
|
||||
"grey52" => array(133, 133, 133),
|
||||
"gray53" => array(135, 135, 135),
|
||||
"grey53" => array(135, 135, 135),
|
||||
"gray54" => array(138, 138, 138),
|
||||
"grey54" => array(138, 138, 138),
|
||||
"gray55" => array(140, 140, 140),
|
||||
"grey55" => array(140, 140, 140),
|
||||
"gray56" => array(143, 143, 143),
|
||||
"grey56" => array(143, 143, 143),
|
||||
"gray57" => array(145, 145, 145),
|
||||
"grey57" => array(145, 145, 145),
|
||||
"gray58" => array(148, 148, 148),
|
||||
"grey58" => array(148, 148, 148),
|
||||
"gray59" => array(150, 150, 150),
|
||||
"grey59" => array(150, 150, 150),
|
||||
"gray60" => array(153, 153, 153),
|
||||
"grey60" => array(153, 153, 153),
|
||||
"gray61" => array(156, 156, 156),
|
||||
"grey61" => array(156, 156, 156),
|
||||
"gray62" => array(158, 158, 158),
|
||||
"grey62" => array(158, 158, 158),
|
||||
"gray63" => array(161, 161, 161),
|
||||
"grey63" => array(161, 161, 161),
|
||||
"gray64" => array(163, 163, 163),
|
||||
"grey64" => array(163, 163, 163),
|
||||
"gray65" => array(166, 166, 166),
|
||||
"grey65" => array(166, 166, 166),
|
||||
"gray66" => array(168, 168, 168),
|
||||
"grey66" => array(168, 168, 168),
|
||||
"gray67" => array(171, 171, 171),
|
||||
"grey67" => array(171, 171, 171),
|
||||
"gray68" => array(173, 173, 173),
|
||||
"grey68" => array(173, 173, 173),
|
||||
"gray69" => array(176, 176, 176),
|
||||
"grey69" => array(176, 176, 176),
|
||||
"gray70" => array(179, 179, 179),
|
||||
"grey70" => array(179, 179, 179),
|
||||
"gray71" => array(181, 181, 181),
|
||||
"grey71" => array(181, 181, 181),
|
||||
"gray72" => array(184, 184, 184),
|
||||
"grey72" => array(184, 184, 184),
|
||||
"gray73" => array(186, 186, 186),
|
||||
"grey73" => array(186, 186, 186),
|
||||
"gray74" => array(189, 189, 189),
|
||||
"grey74" => array(189, 189, 189),
|
||||
"gray75" => array(191, 191, 191),
|
||||
"grey75" => array(191, 191, 191),
|
||||
"gray76" => array(194, 194, 194),
|
||||
"grey76" => array(194, 194, 194),
|
||||
"gray77" => array(196, 196, 196),
|
||||
"grey77" => array(196, 196, 196),
|
||||
"gray78" => array(199, 199, 199),
|
||||
"grey78" => array(199, 199, 199),
|
||||
"gray79" => array(201, 201, 201),
|
||||
"grey79" => array(201, 201, 201),
|
||||
"gray80" => array(204, 204, 204),
|
||||
"grey80" => array(204, 204, 204),
|
||||
"gray81" => array(207, 207, 207),
|
||||
"grey81" => array(207, 207, 207),
|
||||
"gray82" => array(209, 209, 209),
|
||||
"grey82" => array(209, 209, 209),
|
||||
"gray83" => array(212, 212, 212),
|
||||
"grey83" => array(212, 212, 212),
|
||||
"gray84" => array(214, 214, 214),
|
||||
"grey84" => array(214, 214, 214),
|
||||
"gray85" => array(217, 217, 217),
|
||||
"grey85" => array(217, 217, 217),
|
||||
"gray86" => array(219, 219, 219),
|
||||
"grey86" => array(219, 219, 219),
|
||||
"gray87" => array(222, 222, 222),
|
||||
"grey87" => array(222, 222, 222),
|
||||
"gray88" => array(224, 224, 224),
|
||||
"grey88" => array(224, 224, 224),
|
||||
"gray89" => array(227, 227, 227),
|
||||
"grey89" => array(227, 227, 227),
|
||||
"gray90" => array(229, 229, 229),
|
||||
"grey90" => array(229, 229, 229),
|
||||
"gray91" => array(232, 232, 232),
|
||||
"grey91" => array(232, 232, 232),
|
||||
"gray92" => array(235, 235, 235),
|
||||
"grey92" => array(235, 235, 235),
|
||||
"gray93" => array(237, 237, 237),
|
||||
"grey93" => array(237, 237, 237),
|
||||
"gray94" => array(240, 240, 240),
|
||||
"grey94" => array(240, 240, 240),
|
||||
"gray95" => array(242, 242, 242),
|
||||
"grey95" => array(242, 242, 242),
|
||||
"gray96" => array(245, 245, 245),
|
||||
"grey96" => array(245, 245, 245),
|
||||
"gray97" => array(247, 247, 247),
|
||||
"grey97" => array(247, 247, 247),
|
||||
"gray98" => array(250, 250, 250),
|
||||
"grey98" => array(250, 250, 250),
|
||||
"gray99" => array(252, 252, 252),
|
||||
"grey99" => array(252, 252, 252),
|
||||
"gray100" => array(255, 255, 255)
|
||||
);
|
||||
?>
|
||||
@ -113,7 +113,6 @@ if (isset($_POST['action']) && $_POST['action'] == 'upgrade')
|
||||
* Pour Pear: PEAR_PATH
|
||||
* Pour PHP_WriteExcel: PHP_WRITEEXCEL_PATH
|
||||
* Pour MagpieRss: MAGPIERSS_PATH
|
||||
* Pour PHPlot: PHPLOT_PATH
|
||||
* Pour NuSOAP: NUSOAP_PATH
|
||||
* Pour TCPDF: TCPDF_PATH
|
||||
*/
|
||||
@ -121,7 +120,6 @@ if (isset($_POST['action']) && $_POST['action'] == 'upgrade')
|
||||
if (! defined('PEAR_PATH')) { define('PEAR_PATH', DOL_DOCUMENT_ROOT .'/includes/pear/'); }
|
||||
if (! defined('PHP_WRITEEXCEL_PATH')) { define('PHP_WRITEEXCEL_PATH',DOL_DOCUMENT_ROOT .'/includes/php_writeexcel/'); }
|
||||
if (! defined('MAGPIERSS_PATH')) { define('MAGPIERSS_PATH', DOL_DOCUMENT_ROOT .'/includes/magpierss/'); }
|
||||
if (! defined('PHPLOT_PATH')) { define('PHPLOT_PATH', DOL_DOCUMENT_ROOT .'/includes/phplot/'); }
|
||||
if (! defined('NUSOAP_PATH')) { define('NUSOAP_PATH', DOL_DOCUMENT_ROOT .'/includes/nusoap/lib/'); }
|
||||
// Les autres path
|
||||
if (! defined('FPDF_FONTPATH')) { define('FPDF_FONTPATH', FPDF_PATH . 'font/'); }
|
||||
|
||||
@ -31,7 +31,7 @@
|
||||
\version $Revision$
|
||||
*/
|
||||
|
||||
define('DOL_VERSION','2.2');
|
||||
define('DOL_VERSION','2.4-dev');
|
||||
define('EURO',chr(128));
|
||||
|
||||
// La fonction clearstatcache ne doit pas etre appelée de manière globale car ralenti.
|
||||
@ -220,17 +220,6 @@ if (! defined('FPDFI_PATH')) { define('FPDFI_PATH', DOL_DOCUMEN
|
||||
if (! defined('PEAR_PATH')) { define('PEAR_PATH', DOL_DOCUMENT_ROOT .'/includes/pear/'); }
|
||||
if (! defined('PHP_WRITEEXCEL_PATH')) { define('PHP_WRITEEXCEL_PATH',DOL_DOCUMENT_ROOT .'/includes/php_writeexcel/'); }
|
||||
if (! defined('MAGPIERSS_PATH')) { define('MAGPIERSS_PATH', DOL_DOCUMENT_ROOT .'/includes/magpierss/'); }
|
||||
if (! defined('PHPLOT_PATH'))
|
||||
{
|
||||
if (versioncompare(versionphp(),array(4,2,0)) >= 0)
|
||||
{
|
||||
define('PHPLOT_PATH', DOL_DOCUMENT_ROOT .'/includes/phplot5/');
|
||||
}
|
||||
else
|
||||
{
|
||||
define('PHPLOT_PATH', DOL_DOCUMENT_ROOT .'/includes/phplot/');
|
||||
}
|
||||
}
|
||||
if (! defined('JPGRAPH_PATH')) { define('JPGRAPH_PATH', DOL_DOCUMENT_ROOT .'/includes/jpgraph/'); }
|
||||
if (! defined('NUSOAP_PATH')) { define('NUSOAP_PATH', DOL_DOCUMENT_ROOT .'/includes/nusoap/lib/'); }
|
||||
// Les autres path
|
||||
|
||||
8
mysql/migration/2.2.0-2.4.0.sql
Normal file
8
mysql/migration/2.2.0-2.4.0.sql
Normal file
@ -0,0 +1,8 @@
|
||||
--
|
||||
-- $Id$
|
||||
--
|
||||
-- Attention à l ordre des requetes.
|
||||
-- Ce fichier doit être chargé sur une version 2.2.0
|
||||
--
|
||||
|
||||
delete from llx_const where name='MAIN_GRAPH_LIBRARY' and (value like 'phplot%' or value like 'artichow%');
|
||||
Loading…
Reference in New Issue
Block a user