Je souhaite associer une image à une autre avec transparence. Par conséquent, j'utilise Imagick avec PHP.Imagick perd de la transparence lors de l'utilisation de setImageOpacity et composeImage
Est-ce que quelqu'un a une réponse, pourquoi la transparence du $ imageTransparent se perd après avoir utilisé setImageOpacity()?
Voici mon code:
$image = new \Imagick();
$imageTransparent = new \Imagick();
$background = new \ImagickPixel('rgba(0,0,255,1)');
$image->newImage(600, 400, $background);
$background = new \ImagickPixel('rgba(255,255,255,0)');
$imageTransparent->newImage(600, 400, $background);
$draw = new \ImagickDraw();
$draw->setFillColor('#ff0000');
$draw->polygon(array(
array('x' => 50, 'y' => 50),
array('x' => 400, 'y' => 50),
array('x' => 50, 'y' => 300),
));
$imageTransparent->drawImage($draw);
$imageTransparent->setImageOpacity(0.5);
$image->compositeImage($imageTransparent, \Imagick::COMPOSITE_DEFAULT, 0, 0);
EDIT: Je ne veux pas mettre la transparence dans le DrawObject! $ imageTransparency pourrait être n'importe quoi. par exemple. un fichier PNG avec un arrière-plan transparent.
Je veux un fondu enchaîné: http://www.imagemagick.org/Usage/compose/#dissolve
Merci, mais ce n'est pas ce que je veux: $ draw-> setFillColor ('rgba (255,0,0,0.5)'); Disons $ imageTransparent est une image chargée à partir de PNG;) – luggi