src/Image.php
public function setOutputFormat($format = null, $quality = null, $filters = null) {

		if ($format) {
			$format = strtolower($format);

			if (in_array($format, static::$_allowed_formates)) {
				$this->_output_format = $format;

				# fix file extension if this method was called after calling setSaveOptions Method
				if ($this->_save_path) {
					$this->_save_name = preg_replace(
						'/(?<=\.)(?:png|jpeg|jpg|gif)$/i',
						$this->_output_format,
						$this->_save_name
					);

					$this->_save_path = $this->_save_dir . DIRECTORY_SEPARATOR . $this->_save_name;
				}
			}
		}

		// Quality
		$this->_output_options = [];
		if (is_numeric($quality)) {
			// if($format == 'jpg' || $format == 'jpeg')
			// {
			// 	if($quality < 0 || $quality > 100)
			// 		throw new ImageException(__METHOD__ . ' ' . $format . ' quality must be between 0-100');
			// }
			// else if($format == 'png')
			// {
			// 	if($quality < 0 || $quality > 9)
			// 		throw new ImageException(__METHOD__ . ' ' . $format . ' quality must be between 0-9');
			// }

			if ($this->_output_format == 'jpg' || $this->_output_format == 'jpeg') {
				$quality = round($quality * 100 / 100);
			} else if ($this->_output_format == 'png') {
				$quality = round($quality * 9 / 100);
			}

			$this->_output_options[] = $quality;
		}

		// Filters
		if ($filters !== null) {
			// Filters must come after quality
			if (empty($this->_output_options)) {
				$this->_output_options[] = null;
			}

			$this->_output_options[] = $filters;
		}

		return $this;
	}
public function setOutputFormat($format = null, $quality = null, $filters = null) {

		if ($format) {
			$format = strtolower($format);

			if (in_array($format, static::$_allowed_formates)) {
				$this->_output_format = $format;

				# fix file extension if this method was called after calling setSaveOptions Method
				if ($this->_save_path) {
					$this->_save_name = preg_replace(
						'/(?<=\.)(?:png|jpeg|jpg|gif)$/i',
						$this->_output_format,
						$this->_save_name
					);

					$this->_save_path = $this->_save_dir . DIRECTORY_SEPARATOR . $this->_save_name;
				}
			}
		}

		// Quality
		$this->_output_options = [];
		if (is_numeric($quality)) {
			// if($format == 'jpg' || $format == 'jpeg')
			// {
			// 	if($quality < 0 || $quality > 100)
			// 		throw new ImageException(__METHOD__ . ' ' . $format . ' quality must be between 0-100');
			// }
			// else if($format == 'png')
			// {
			// 	if($quality < 0 || $quality > 9)
			// 		throw new ImageException(__METHOD__ . ' ' . $format . ' quality must be between 0-9');
			// }

			if ($this->_output_format == 'jpg' || $this->_output_format == 'jpeg') {
				$quality = round($quality * 100 / 100);
			} else if ($this->_output_format == 'png') {
				$quality = round($quality * 9 / 100);
			}

			$this->_output_options[] = $quality;
		}

		// Filters
		if ($filters !== null) {
			// Filters must come after quality
			if (empty($this->_output_options)) {
				$this->_output_options[] = null;
			}

			$this->_output_options[] = $filters;
		}

		return $this;
	}
public function setOutputFormat ( $ format = null , $ quality = null , $ filters = null ) { if ( $ format ) { $ format = strtolower ( $ format ) ; if ( in_array ( $ format , static :: $ _allowed_formates ) ) { $ this -> _output_format = $ format ; # fix file extension if this method was called after calling setSaveOptions Method if ( $ this -> _save_path ) { $ this -> _save_name = preg_replace ( '/(?<=\.)(?:png|jpeg|jpg|gif)$/i' , $ this -> _output_format , $ this -> _save_name ) ; $ this -> _save_path = $ this -> _save_dir . DIRECTORY_SEPARATOR . $ this -> _save_name ; } } } // Quality $ this -> _output_options = [ ] ; if ( is_numeric ( $ quality ) ) { // if($format == 'jpg' || $format == 'jpeg') // { // 	if($quality < 0 || $quality > 100) // 		throw new ImageException(__METHOD__ . ' ' . $format . ' quality must be between 0-100'); // } // else if($format == 'png') // { // 	if($quality < 0 || $quality > 9) // 		throw new ImageException(__METHOD__ . ' ' . $format . ' quality must be between 0-9'); // } if ( $ this -> _output_format == 'jpg' || $ this -> _output_format == 'jpeg' ) { $ quality = round ( $ quality * 100 / 100 ) ; } else if ( $ this -> _output_format == 'png' ) { $ quality = round ( $ quality * 9 / 100 ) ; } $ this -> _output_options [ ] = $ quality ; } // Filters if ( $ filters !== null ) { // Filters must come after quality if ( empty ( $ this -> _output_options ) ) { $ this -> _output_options [ ] = null ; } $ this -> _output_options [ ] = $ filters ; } return $ this ; }
Setting Output Format
@param String $format png, jpeg, jpg OR gif
Setting Output Format