per la tipologia del file salvato ho risolto così:

codice:
 function SaveProportionateImage($filename, $quality, $height){

        $dest_height = $height;

        $ratio = $this->src_height / $dest_height;

        $dest_image = imagecreatetruecolor( $this->src_width / $ratio,$dest_height);


        imagecopyresampled($dest_image, $this->src_image, 0, 0, 0, 0,

            $this->src_width / $ratio,

            $this->src_height / $ratio,

            $this->src_width,

            $this->src_height);

      
          switch($this->src_type){

            case 1:

                imagegif($dest_image, $filename.'.gif', $quality);

                   break;

            case 2:

               imagejpeg($dest_image, $filename.'.jpg', $quality);

            break;

            case 3:

                imagepng($dest_image, $filename.'.png', $quality);

            break;

            default:    return false;

        }
     




        imagedestroy($dest_image);

    }