Transparent Cercle Recadrée de l'Image avec PHP

Je veux recadrer un cercle d'image à l'aide de PHP, mais il semble que ma nouvelle image de quelques pixels transparents. Bien sûr, je ne veux que la zone à l'extérieur de l'ellipse d'avoir un fond transparent

Mon code est le suivant:

        $image = imagecreatetruecolor($this->dst_w, $this->dst_h);
        imagealphablending($image,true);
        imagecopy ( $image , $image_s , 0, 0, $this->src_x, $this->src_y, $this->dst_w, $this->dst_h );
        $mask = imagecreatetruecolor($this->src_x, $this->src_y);
        $mask = imagecreatetruecolor($this->dst_w, $this->dst_h);
        $transparent = imagecolorallocate($mask, 255, 0, 0);
        imagecolortransparent($mask, $transparent);
        imagefilledellipse($mask, $this->dst_w/2, $this->dst_h/2, $this->dst_w, $this->dst_h, $transparent);
        $red = imagecolorallocate($mask, 0, 0, 0);
        imagecopymerge($image, $mask, 0, 0, 0, 0, $this->dst_w, $this->dst_h,100);
        imagecolortransparent($image, $red);
        imagefill($image,0,0, $red);

        if ($ext=="jpg" || $ext=="jpeg") {
            imagejpeg($image, $this->croppedImage);
        } else if ($ext=="png") {
            imagepng($image, $this->croppedImage);
        }           
        imagedestroy($image);
        imagedestroy($mask);
        //<------- END generate cropped Image ------->

        //<------- START generate transparent Image ------->               
        $this->generateTransparentImage('circle');

......

Un exemple de réelle de l'image générée est ici:
Transparent Cercle Recadrée de l'Image avec PHP

EDIT: generateTransparentImage fonction n'a rien à voir avec le code ci-dessus; cette fonction générer cette image:
http://s7.postimage.org/byybq9163/Koala7_500x375_c_transparent.png

Si vous voulez que les autres à jouer avec votre code, vous devez partager l'image d'origine. Aussi le code de generateTransparentImage est caché afin que d'autres personnes ne peuvent pas se reproduire.
double possible de PHP - polygone de masquage de l'image - Si vous ne voulez pas utiliser une bibliothèque, le code-source de Wideimage est un logiciel gratuit de sorte que vous pouvez le porter dans votre application. Sinon, il y a beaucoup de questions existantes, qui montrent diverses autres façons de faire, les honoraires libres de regarder autour de soi: stackoverflow.com/search?q=%5Bphp%5D+%5Bgd%5D+mask

OriginalL'auteur Larry | 2012-10-18