Générer des images arrondies en PHP avec Imagemagick

De Typo3 CMS / Documentation Typo3 / Support Typo3.

Voici la méthode à suivre pour générer des images arrondies avec Imagemagick.

Préambule : Nous devons disposer de 4 images transparentes en png masquant chacun des 4 coins. Dans notre exemple la couleur utilisée pour ces masques est la couleur #ff00f6

//Chemin vers l'image dont on doit arrondir les bords
$image_name = 'uploads/pics/' . $monimage;
 
//On convertit l'image de base en .png
exec ( "convert {$image_name} {$image_name}.png" );
 
//Dossier de stockage des images servant à arrondir
$image_path = 'uploads/pics/';
 
//On fusionne les 4 images de coin avec l'image à arrondir
exec( "composite -compose Over -quality 100 -gravity NorthWest $image_path/cornermask_upper_left.png {$image_name}.png {$image_name}nw " );
exec( "composite -compose Over -quality 100 -gravity SouthWest $image_path/cornermask_lower_left.png {$image_name}nw {$image_name}sw" );
exec( "composite -compose Over -quality 100 -gravity NorthEast $image_path/cornermask_upper_right.png {$image_name}sw {$image_name}ne" );
exec( "composite -compose Over -quality 100 -gravity SouthEast $image_path/cornermask_lower_right.png {$image_name}ne {$image_name}mask" );
 
//On masque la couleur
exec( "convert {$image_name}mask -transparent \"#ff00f6\" {$image_name}.png" );
Outils personnels