--TEST-- Test Imagick, evaluateImage --SKIPIF-- --FILE-- newPseudoImage( $size, $size, "gradient:$gradientStartColor-$gradientEndColor" ); $quantumScaledTypes = array( \Imagick::EVALUATE_ADD, \Imagick::EVALUATE_AND, \Imagick::EVALUATE_MAX, \Imagick::EVALUATE_MIN, \Imagick::EVALUATE_OR, \Imagick::EVALUATE_SET, \Imagick::EVALUATE_SUBTRACT, \Imagick::EVALUATE_XOR, \Imagick::EVALUATE_THRESHOLD, \Imagick::EVALUATE_THRESHOLDBLACK, \Imagick::EVALUATE_THRESHOLDWHITE, \Imagick::EVALUATE_ADDMODULUS, ); $unscaledTypes = array( \Imagick::EVALUATE_DIVIDE, \Imagick::EVALUATE_MULTIPLY, \Imagick::EVALUATE_RIGHTSHIFT, \Imagick::EVALUATE_LEFTSHIFT, \Imagick::EVALUATE_POW, \Imagick::EVALUATE_LOG, \Imagick::EVALUATE_GAUSSIANNOISE, \Imagick::EVALUATE_IMPULSENOISE, \Imagick::EVALUATE_LAPLACIANNOISE, \Imagick::EVALUATE_MULTIPLICATIVENOISE, \Imagick::EVALUATE_POISSONNOISE, \Imagick::EVALUATE_UNIFORMNOISE, \Imagick::EVALUATE_COSINE, \Imagick::EVALUATE_SINE, ); if (in_array($evaluateType, $unscaledTypes)) { $imagick->evaluateimage($evaluateType, $firstTerm); } else if (in_array($evaluateType, $quantumScaledTypes)) { $imagick->evaluateimage($evaluateType, $firstTerm * \Imagick::getQuantum()); } else { throw new \Exception("Evaluation type $evaluateType is not listed as either scaled or unscaled"); } $imagick->setimageformat('png'); $bytes = $imagick->getImageBlob(); if (strlen($bytes) <= 0) { echo "Failed to generate image.";} } foreach ($evaluateTypes as $evaluateType) { evaluateImage($evaluateType, $firstTerm, $gradientStartColor, $gradientEndColor) ; } echo "Ok"; ?> --EXPECTF-- Ok