Quello che vuoi è Imagick :: ShadowImage (float $ opacità, galleggiare $ sigma, int $ x, int $ y)
Ecco un esempio in cui ho messo un'ombra su un testo e poi sovrappongo che in un'immagine di sfondo ...
$background_layer = new Imagick('poster_pic_01.jpg'); # background image
$text_layer = new Imagick('transparent400.png'); # empty transparent png of the same size
$text_layer->annotateImage($ImagickDraw, $pad_left, $pad_top, 0, "Your text here");
/* create drop shadow on it's own layer */
$shadow_layer = $text_layer->clone();
$shadow_layer->setImageBackgroundColor(new ImagickPixel('black'));
$shadow_layer->shadowImage(75, 5, 5, 5);
/* composite original text_layer onto shadow_layer */
$shadow_layer->compositeImage($text_layer, Imagick::COMPOSITE_OVER, 0, 0);
/* composite shadow_layer (which now has text AND the shadow) onto image_layer */
$background_layer->compositeImage($shadow_layer, Imagick::COMPOSITE_OVER, 0, 0);
Spero che questo aiuti,
Roger
Come potrei fare per utilizzare i bit di sopra della linea di comando in PHP, non riesco a vedere nulla su http: // php.net/manual/en/bo ok.imagick.php che mi aiuterebbe. – user984580
@user buona domanda. Non conosco l'estensione PHP quindi non so - * forse * usando ['ShadowImage'] (http://www.php.net/manual/en/function.imagick-shadowimage.php), ma io non sono sicuro –