--TEST-- Test for round issues --SKIPIF-- --FILE-- newPseudoImage($imageWidth, $imageHeight, 'xc:white'); $imagick->cropThumbnailImage( $desired_width, $desired_height, $legacy ); $error = false; $thumbnailImageWidth = $imagick->getImageWidth(); $thumbnailImageHeight = $imagick->getImageHeight(); if ($thumbnailImageHeight != $desired_height) { echo "Incorrect height for desired_width $desired_width imageHeight $imageHeight".PHP_EOL; $error = true; } $expectedWidth = $desired_width; $expectedHeight = $desired_height; if ($legacy == true && $desired_width == 250 && $desired_height == 250) { // Thumbnail size of 249 x 250 does not matched desired size 250 x 250 for source image of 1128 x 1128 $expectedWidth = 249; } if ($thumbnailImageWidth != $expectedWidth) { echo "Incorrect width for desired_width $desired_width imageHeight $imageHeight".PHP_EOL; $error = true; } if ($thumbnailImageHeight != $expectedHeight) { echo "Incorrect width for desired_width $desired_width imageHeight $imageHeight".PHP_EOL; $error = true; } if ($error) { printf( "Thumbnail size of %d x %d does not matched expected size %d x %d for source image of %d x %d. Legacy is %d\n", $thumbnailImageWidth, $thumbnailImageHeight, $desired_width, $desired_height, $imageWidth, $imageHeight, $legacy ); } } } echo "Done" . PHP_EOL; ?> --EXPECTF-- Done