/** * Runs [GD::check] and loads the image. * * @param string $file image file path * @return void */ public function __construct($file) { if (!GD::$_checked) { // Run the install check GD::check(); } parent::__construct($file); // Set the image creation function name switch ($this->type) { case IMAGETYPE_JPEG: $create = 'imagecreatefromjpeg'; break; case IMAGETYPE_GIF: $create = 'imagecreatefromgif'; break; case IMAGETYPE_PNG: $create = 'imagecreatefrompng'; break; } if (!isset($create) or !function_exists($create)) { die('Installed GD does not support ' . image_type_to_extension($this->type, FALSE) . ' images'); } // Save function for future use $this->_create_function = $create; // Save filename for lazy loading $this->_image = $this->file; }