| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369 | 
							- <?php
 
- namespace PhpOffice\PhpSpreadsheet\Chart;
 
- /**
 
-  * Created by PhpStorm.
 
-  * User: nhw2h8s
 
-  * Date: 7/2/14
 
-  * Time: 5:45 PM.
 
-  */
 
- abstract class Properties
 
- {
 
-     const
 
-         EXCEL_COLOR_TYPE_STANDARD = 'prstClr';
 
-     const EXCEL_COLOR_TYPE_SCHEME = 'schemeClr';
 
-     const EXCEL_COLOR_TYPE_ARGB = 'srgbClr';
 
-     const
 
-         AXIS_LABELS_LOW = 'low';
 
-     const AXIS_LABELS_HIGH = 'high';
 
-     const AXIS_LABELS_NEXT_TO = 'nextTo';
 
-     const AXIS_LABELS_NONE = 'none';
 
-     const
 
-         TICK_MARK_NONE = 'none';
 
-     const TICK_MARK_INSIDE = 'in';
 
-     const TICK_MARK_OUTSIDE = 'out';
 
-     const TICK_MARK_CROSS = 'cross';
 
-     const
 
-         HORIZONTAL_CROSSES_AUTOZERO = 'autoZero';
 
-     const HORIZONTAL_CROSSES_MAXIMUM = 'max';
 
-     const
 
-         FORMAT_CODE_GENERAL = 'General';
 
-     const FORMAT_CODE_NUMBER = '#,##0.00';
 
-     const FORMAT_CODE_CURRENCY = '$#,##0.00';
 
-     const FORMAT_CODE_ACCOUNTING = '_($* #,##0.00_);_($* (#,##0.00);_($* "-"??_);_(@_)';
 
-     const FORMAT_CODE_DATE = 'm/d/yyyy';
 
-     const FORMAT_CODE_TIME = '[$-F400]h:mm:ss AM/PM';
 
-     const FORMAT_CODE_PERCENTAGE = '0.00%';
 
-     const FORMAT_CODE_FRACTION = '# ?/?';
 
-     const FORMAT_CODE_SCIENTIFIC = '0.00E+00';
 
-     const FORMAT_CODE_TEXT = '@';
 
-     const FORMAT_CODE_SPECIAL = '00000';
 
-     const
 
-         ORIENTATION_NORMAL = 'minMax';
 
-     const ORIENTATION_REVERSED = 'maxMin';
 
-     const
 
-         LINE_STYLE_COMPOUND_SIMPLE = 'sng';
 
-     const LINE_STYLE_COMPOUND_DOUBLE = 'dbl';
 
-     const LINE_STYLE_COMPOUND_THICKTHIN = 'thickThin';
 
-     const LINE_STYLE_COMPOUND_THINTHICK = 'thinThick';
 
-     const LINE_STYLE_COMPOUND_TRIPLE = 'tri';
 
-     const LINE_STYLE_DASH_SOLID = 'solid';
 
-     const LINE_STYLE_DASH_ROUND_DOT = 'sysDot';
 
-     const LINE_STYLE_DASH_SQUERE_DOT = 'sysDash';
 
-     const LINE_STYPE_DASH_DASH = 'dash';
 
-     const LINE_STYLE_DASH_DASH_DOT = 'dashDot';
 
-     const LINE_STYLE_DASH_LONG_DASH = 'lgDash';
 
-     const LINE_STYLE_DASH_LONG_DASH_DOT = 'lgDashDot';
 
-     const LINE_STYLE_DASH_LONG_DASH_DOT_DOT = 'lgDashDotDot';
 
-     const LINE_STYLE_CAP_SQUARE = 'sq';
 
-     const LINE_STYLE_CAP_ROUND = 'rnd';
 
-     const LINE_STYLE_CAP_FLAT = 'flat';
 
-     const LINE_STYLE_JOIN_ROUND = 'bevel';
 
-     const LINE_STYLE_JOIN_MITER = 'miter';
 
-     const LINE_STYLE_JOIN_BEVEL = 'bevel';
 
-     const LINE_STYLE_ARROW_TYPE_NOARROW = null;
 
-     const LINE_STYLE_ARROW_TYPE_ARROW = 'triangle';
 
-     const LINE_STYLE_ARROW_TYPE_OPEN = 'arrow';
 
-     const LINE_STYLE_ARROW_TYPE_STEALTH = 'stealth';
 
-     const LINE_STYLE_ARROW_TYPE_DIAMOND = 'diamond';
 
-     const LINE_STYLE_ARROW_TYPE_OVAL = 'oval';
 
-     const LINE_STYLE_ARROW_SIZE_1 = 1;
 
-     const LINE_STYLE_ARROW_SIZE_2 = 2;
 
-     const LINE_STYLE_ARROW_SIZE_3 = 3;
 
-     const LINE_STYLE_ARROW_SIZE_4 = 4;
 
-     const LINE_STYLE_ARROW_SIZE_5 = 5;
 
-     const LINE_STYLE_ARROW_SIZE_6 = 6;
 
-     const LINE_STYLE_ARROW_SIZE_7 = 7;
 
-     const LINE_STYLE_ARROW_SIZE_8 = 8;
 
-     const LINE_STYLE_ARROW_SIZE_9 = 9;
 
-     const
 
-         SHADOW_PRESETS_NOSHADOW = null;
 
-     const SHADOW_PRESETS_OUTER_BOTTTOM_RIGHT = 1;
 
-     const SHADOW_PRESETS_OUTER_BOTTOM = 2;
 
-     const SHADOW_PRESETS_OUTER_BOTTOM_LEFT = 3;
 
-     const SHADOW_PRESETS_OUTER_RIGHT = 4;
 
-     const SHADOW_PRESETS_OUTER_CENTER = 5;
 
-     const SHADOW_PRESETS_OUTER_LEFT = 6;
 
-     const SHADOW_PRESETS_OUTER_TOP_RIGHT = 7;
 
-     const SHADOW_PRESETS_OUTER_TOP = 8;
 
-     const SHADOW_PRESETS_OUTER_TOP_LEFT = 9;
 
-     const SHADOW_PRESETS_INNER_BOTTTOM_RIGHT = 10;
 
-     const SHADOW_PRESETS_INNER_BOTTOM = 11;
 
-     const SHADOW_PRESETS_INNER_BOTTOM_LEFT = 12;
 
-     const SHADOW_PRESETS_INNER_RIGHT = 13;
 
-     const SHADOW_PRESETS_INNER_CENTER = 14;
 
-     const SHADOW_PRESETS_INNER_LEFT = 15;
 
-     const SHADOW_PRESETS_INNER_TOP_RIGHT = 16;
 
-     const SHADOW_PRESETS_INNER_TOP = 17;
 
-     const SHADOW_PRESETS_INNER_TOP_LEFT = 18;
 
-     const SHADOW_PRESETS_PERSPECTIVE_BELOW = 19;
 
-     const SHADOW_PRESETS_PERSPECTIVE_UPPER_RIGHT = 20;
 
-     const SHADOW_PRESETS_PERSPECTIVE_UPPER_LEFT = 21;
 
-     const SHADOW_PRESETS_PERSPECTIVE_LOWER_RIGHT = 22;
 
-     const SHADOW_PRESETS_PERSPECTIVE_LOWER_LEFT = 23;
 
-     /**
 
-      * @param float $width
 
-      *
 
-      * @return float
 
-      */
 
-     protected function getExcelPointsWidth($width)
 
-     {
 
-         return $width * 12700;
 
-     }
 
-     /**
 
-      * @param float $angle
 
-      *
 
-      * @return float
 
-      */
 
-     protected function getExcelPointsAngle($angle)
 
-     {
 
-         return $angle * 60000;
 
-     }
 
-     protected function getTrueAlpha($alpha)
 
-     {
 
-         return (string) 100 - $alpha . '000';
 
-     }
 
-     protected function setColorProperties($color, $alpha, $type)
 
-     {
 
-         return [
 
-             'type' => (string) $type,
 
-             'value' => (string) $color,
 
-             'alpha' => (string) $this->getTrueAlpha($alpha),
 
-         ];
 
-     }
 
-     protected function getLineStyleArrowSize($array_selector, $array_kay_selector)
 
-     {
 
-         $sizes = [
 
-             1 => ['w' => 'sm', 'len' => 'sm'],
 
-             2 => ['w' => 'sm', 'len' => 'med'],
 
-             3 => ['w' => 'sm', 'len' => 'lg'],
 
-             4 => ['w' => 'med', 'len' => 'sm'],
 
-             5 => ['w' => 'med', 'len' => 'med'],
 
-             6 => ['w' => 'med', 'len' => 'lg'],
 
-             7 => ['w' => 'lg', 'len' => 'sm'],
 
-             8 => ['w' => 'lg', 'len' => 'med'],
 
-             9 => ['w' => 'lg', 'len' => 'lg'],
 
-         ];
 
-         return $sizes[$array_selector][$array_kay_selector];
 
-     }
 
-     protected function getShadowPresetsMap($shadow_presets_option)
 
-     {
 
-         $presets_options = [
 
-             //OUTER
 
-             1 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '2700000',
 
-                 'algn' => 'tl',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             2 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '5400000',
 
-                 'algn' => 't',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             3 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '8100000',
 
-                 'algn' => 'tr',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             4 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'algn' => 'l',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             5 => [
 
-                 'effect' => 'outerShdw',
 
-                 'size' => [
 
-                     'sx' => '102000',
 
-                     'sy' => '102000',
 
-                 ],
 
-                 'blur' => '63500',
 
-                 'distance' => '38100',
 
-                 'algn' => 'ctr',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             6 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '10800000',
 
-                 'algn' => 'r',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             7 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '18900000',
 
-                 'algn' => 'bl',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             8 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '16200000',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             9 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '50800',
 
-                 'distance' => '38100',
 
-                 'direction' => '13500000',
 
-                 'algn' => 'br',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             //INNER
 
-             10 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '2700000',
 
-             ],
 
-             11 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '5400000',
 
-             ],
 
-             12 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '8100000',
 
-             ],
 
-             13 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-             ],
 
-             14 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '114300',
 
-             ],
 
-             15 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '10800000',
 
-             ],
 
-             16 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '18900000',
 
-             ],
 
-             17 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '16200000',
 
-             ],
 
-             18 => [
 
-                 'effect' => 'innerShdw',
 
-                 'blur' => '63500',
 
-                 'distance' => '50800',
 
-                 'direction' => '13500000',
 
-             ],
 
-             //perspective
 
-             19 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '152400',
 
-                 'distance' => '317500',
 
-                 'size' => [
 
-                     'sx' => '90000',
 
-                     'sy' => '-19000',
 
-                 ],
 
-                 'direction' => '5400000',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             20 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '76200',
 
-                 'direction' => '18900000',
 
-                 'size' => [
 
-                     'sy' => '23000',
 
-                     'kx' => '-1200000',
 
-                 ],
 
-                 'algn' => 'bl',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             21 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '76200',
 
-                 'direction' => '13500000',
 
-                 'size' => [
 
-                     'sy' => '23000',
 
-                     'kx' => '1200000',
 
-                 ],
 
-                 'algn' => 'br',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             22 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '76200',
 
-                 'distance' => '12700',
 
-                 'direction' => '2700000',
 
-                 'size' => [
 
-                     'sy' => '-23000',
 
-                     'kx' => '-800400',
 
-                 ],
 
-                 'algn' => 'bl',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-             23 => [
 
-                 'effect' => 'outerShdw',
 
-                 'blur' => '76200',
 
-                 'distance' => '12700',
 
-                 'direction' => '8100000',
 
-                 'size' => [
 
-                     'sy' => '-23000',
 
-                     'kx' => '800400',
 
-                 ],
 
-                 'algn' => 'br',
 
-                 'rotWithShape' => '0',
 
-             ],
 
-         ];
 
-         return $presets_options[$shadow_presets_option];
 
-     }
 
-     protected function getArrayElementsValue($properties, $elements)
 
-     {
 
-         $reference = &$properties;
 
-         if (!is_array($elements)) {
 
-             return $reference[$elements];
 
-         }
 
-         foreach ($elements as $keys) {
 
-             $reference = &$reference[$keys];
 
-         }
 
-         return $reference;
 
-     }
 
- }
 
 
  |