| Server IP : 162.214.74.102 / Your IP : 216.73.217.21 Web Server : Apache System : Linux dedi-4363141.lrsys.com.br 3.10.0-1160.119.1.el7.tuxcare.els25.x86_64 #1 SMP Wed Oct 1 17:37:27 UTC 2025 x86_64 User : lrsys ( 1015) PHP Version : 5.6.40 Disable Function : exec,passthru,shell_exec,system MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /opt/cpanel/ea-php73/root/usr/share/tests/pecl/imagick/tests/ |
Upload File : |
--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