![]() Server : Apache/2.4.62 (Unix) OpenSSL/1.0.2k-fips System : Linux server1.richineiserver.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : fdshops ( 1003) PHP Version : 8.2.21 Disable Function : NONE Directory : /usr/local/src/imagick/tests/ |
--TEST-- Test Imagick, evaluateImage --SKIPIF-- <?php $imageMagickRequiredVersion=0x675; require_once(dirname(__FILE__) . '/skipif.inc'); checkFormatPresent('png'); ?> --FILE-- <?php $evaluateType = 1; $firstTerm = 0.5; $gradientStartColor = 'black'; $gradientEndColor = 'white'; $evaluateTypes = 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, \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, ); function evaluateImage($evaluateType, $firstTerm, $gradientStartColor, $gradientEndColor) { $imagick = new \Imagick(); $size = 400; $imagick->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