PluginProbe
Visualizer – Tables & Charts Manager with Built-in AI Generator / 3.0.3
Visualizer – Tables & Charts Manager with Built-in AI Generator v3.0.3
4.0.8 4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.2 3.1.3 3.10.0 3.10.1 3.10.10 3.10.11 3.10.12 3.10.13 3.10.14 3.10.15 3.10.2 3.10.3 All 149 releases
visualizer / vendor / phpoffice / phpexcel / Classes / PHPExcel / Worksheet / Drawing.php

Drawing.php in Visualizer – Tables & Charts Manager with Built-in AI Generator 3.0.3, at vendor/phpoffice/phpexcel/Classes/PHPExcel/Worksheet/Drawing.php

149 lines 3.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * PHPExcel
4 *
5 * Copyright (c) 2006 - 2014 PHPExcel
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 *
21 * @category PHPExcel
22 * @package PHPExcel_Worksheet_Drawing
23 * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)
24 * @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
25 * @version ##VERSION##, ##DATE##
26 */
27
28
29 /**
30 * PHPExcel_Worksheet_Drawing
31 *
32 * @category PHPExcel
33 * @package PHPExcel_Worksheet_Drawing
34 * @copyright Copyright (c) 2006 - 2014 PHPExcel (http://www.codeplex.com/PHPExcel)
35 */
36 class PHPExcel_Worksheet_Drawing extends PHPExcel_Worksheet_BaseDrawing implements PHPExcel_IComparable
37 {
38 /**
39 * Path
40 *
41 * @var string
42 */
43 private $_path;
44
45 /**
46 * Create a new PHPExcel_Worksheet_Drawing
47 */
48 public function __construct()
49 {
50 // Initialise values
51 $this->_path = '';
52
53 // Initialize parent
54 parent::__construct();
55 }
56
57 /**
58 * Get Filename
59 *
60 * @return string
61 */
62 public function getFilename() {
63 return basename($this->_path);
64 }
65
66 /**
67 * Get indexed filename (using image index)
68 *
69 * @return string
70 */
71 public function getIndexedFilename() {
72 $fileName = $this->getFilename();
73 $fileName = str_replace(' ', '_', $fileName);
74 return str_replace('.' . $this->getExtension(), '', $fileName) . $this->getImageIndex() . '.' . $this->getExtension();
75 }
76
77 /**
78 * Get Extension
79 *
80 * @return string
81 */
82 public function getExtension() {
83 $exploded = explode(".", basename($this->_path));
84 return $exploded[count($exploded) - 1];
85 }
86
87 /**
88 * Get Path
89 *
90 * @return string
91 */
92 public function getPath() {
93 return $this->_path;
94 }
95
96 /**
97 * Set Path
98 *
99 * @param string $pValue File path
100 * @param boolean $pVerifyFile Verify file
101 * @throws PHPExcel_Exception
102 * @return PHPExcel_Worksheet_Drawing
103 */
104 public function setPath($pValue = '', $pVerifyFile = true) {
105 if ($pVerifyFile) {
106 if (file_exists($pValue)) {
107 $this->_path = $pValue;
108
109 if ($this->_width == 0 && $this->_height == 0) {
110 // Get width/height
111 list($this->_width, $this->_height) = getimagesize($pValue);
112 }
113 } else {
114 throw new PHPExcel_Exception("File $pValue not found!");
115 }
116 } else {
117 $this->_path = $pValue;
118 }
119 return $this;
120 }
121
122 /**
123 * Get hash code
124 *
125 * @return string Hash code
126 */
127 public function getHashCode() {
128 return md5(
129 $this->_path
130 . parent::getHashCode()
131 . __CLASS__
132 );
133 }
134
135 /**
136 * Implement PHP __clone to create a deep clone, not just a shallow copy.
137 */
138 public function __clone() {
139 $vars = get_object_vars($this);
140 foreach ($vars as $key => $value) {
141 if (is_object($value)) {
142 $this->$key = clone $value;
143 } else {
144 $this->$key = $value;
145 }
146 }
147 }
148 }
149