JBZoo\Image\Filter::desaturate PHP Метод

desaturate() публичный статический Метод

Desaturate
public static desaturate ( resource $image, integer $percent = 100 ) : resource | null
$image resource Image GD resource
$percent integer Level of desaturization.
Результат resource | null
    public static function desaturate($image, $percent = 100)
    {
        // Determine percentage
        $percent = Helper::percent($percent);
        $width = imagesx($image);
        $height = imagesy($image);
        if ($percent === 100) {
            self::grayscale($image);
        } else {
            // Make a desaturated copy of the image
            $newImage = imagecreatetruecolor($width, $height);
            imagealphablending($newImage, false);
            imagecopy($newImage, $image, 0, 0, 0, 0, $width, $height);
            imagefilter($newImage, IMG_FILTER_GRAYSCALE);
            // Merge with specified percentage
            Helper::imageCopyMergeAlpha($image, $newImage, array(0, 0), array(0, 0), array($width, $height), $percent);
            return $newImage;
        }
        return null;
    }