Beware that fxImage return value's type is a new object(Imagick), opposing the current documentation (boolean). Therefore it does not affect the caller object. Example:<?php $canvas = new Imagick(); $canvas->newImage(256, 256, "white", "jpg"); $gradient = new Imagick(); $gradient->newPseudoImage(256, 256, "gradient:white-black"); $canvas->compositeImage( $gradient, imagick::COMPOSITE_OVER, 0, 0 ); $canvas->rotateImage(new ImagickPixel(), 90); /*instead of just $canvas->fxImage("floor(s*10+0.5)/10"); we must store fxImage()'s result*/ $canvas= $canvas->fxImage("floor(s*10+0.5)/10"); header( "Content-Type: image/jpg" ); echo $canvas; ?>