private function handleImageEffects(&$imgHandle) { if (empty($this->effect)) { return false; } switch ($this->effect) { case self::EFFECT_BW: if (defined("IMG_FILTER_GRAYSCALE")) { imagefilter($imgHandle, IMG_FILTER_GRAYSCALE); } break; case self::EFFECT_BRIGHTNESS: if (defined("IMG_FILTER_BRIGHTNESS")) { if (!is_numeric($this->effect_arg1)) { $this->effect_arg1 = 50; } //set default value UniteFunctionsHCar::validateNumeric($this->effect_arg1, "'ea1' argument"); imagefilter($imgHandle, IMG_FILTER_BRIGHTNESS, $this->effect_arg1); } break; case self::EFFECT_CONTRAST: if (defined("IMG_FILTER_CONTRAST")) { if (!is_numeric($this->effect_arg1)) { $this->effect_arg1 = -5; } //set default value imagefilter($imgHandle, IMG_FILTER_CONTRAST, $this->effect_arg1); } break; case self::EFFECT_EDGE: if (defined("IMG_FILTER_EDGEDETECT")) { imagefilter($imgHandle, IMG_FILTER_EDGEDETECT); } break; case self::EFFECT_EMBOSS: if (defined("IMG_FILTER_EMBOSS")) { imagefilter($imgHandle, IMG_FILTER_EMBOSS); } break; case self::EFFECT_BLUR: if (defined("IMG_FILTER_GAUSSIAN_BLUR")) { imagefilter($imgHandle, IMG_FILTER_GAUSSIAN_BLUR); } break; case self::EFFECT_MEAN: if (defined("IMG_FILTER_MEAN_REMOVAL")) { imagefilter($imgHandle, IMG_FILTER_MEAN_REMOVAL); } break; case self::EFFECT_SMOOTH: if (defined("IMG_FILTER_SMOOTH")) { if (!is_numeric($this->effect_arg1)) { $this->effect_arg1 = 15; } //set default value imagefilter($imgHandle, IMG_FILTER_SMOOTH, $this->effect_arg1); } break; default: $this->throwError("Effect not supported: <b>{$this->effect}</b>"); break; } }