1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Erro Redimensionar Imagem PHP

Discussão em 'Web Development' iniciada por silvino, 6 de Março de 2009. (Respostas: 0; Visualizações: 562)

  1. silvino

    silvino Power Member

    Olá,

    Estou a ter problemas para redimensionar imagens, o script ultrapassa os 32 megabytes impostos pelo hoster...
    Será problema do Script ? Afinal as imagens não são assim tão grandes,,,
    PHP:
    public function imgresize($id$timg) {
            
    //Função que altera o tamanho das imagens
            //$imgsrc caminho para a imagem
            //$infoimg dados da imagem original
            //$img dita cuja imagem a alterar 
            //$nimg imagem criada com novas dimensões

            
    $imgsrc $this->imgroot.$id;
            
    $infoimg getimagesize($imgsrc);

            
    //determina o tamanho que a imagem terá 
            
    if($infoimg[0]>AND $infoimg[1]>0){ 
                
    $width=$infoimg[0]; 
                
    $height=$infoimg[1]; 
            }else{ 
                return 
    $id." imgsize ?"
                 
            }     
            if (
    $width $height) { 
                
    $percent = ($timg $width); 
            } else { 
                
    $percent = ($timg $height); 
            } 
             
            
    //calcula o novo tamanho e arredonda o resultado 
            
    $width round($width $percent); 
            
    $height round($height $percent);
            
    //Cria uma imagem com o tamanho pretendido 
            
            
    $nimg imagecreatetruecolor($width$height);
            
            
    //determina o tipo de imagem e
            //Copia a imagem original para a nova, alterando o seu tamanho 
            
    switch($infoimg["2"]){
                case 
    "1":
                    
    //1 = GIF,
                    
    imagecopyresampled($nimgimagecreatefromgif($imgsrc), 0000$width$height$infoimg[0], $infoimg[1]);
                break;
                case 
    "2":
                    
    //2 = JPG,
                    
    imagecopyresampled($nimgimagecreatefromjpeg($imgsrc), 0000$width$height$infoimg[0], $infoimg[1]);
                break;
                case 
    "3":
                    
    //3 = PNG,
                    
    imagecopyresampled($nimgimagecreatefrompng($imgsrc), 0000$width$height$infoimg[0], $infoimg[1]);
                break;                            
                default:
                
    //4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF(intel byte order),
                //8 = TIFF(motorola byte order), 9 = JPC, 10 = JP2,
                //11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF
                    
    return FALSE;
            }
            
             
    //remove a imagem anterior e guarda a nova 
             
    if(unlink($imgsrc)){
                if(
    $this->imggrava($nimg ,$id$infoimg["2"])){
                    return 
    "TRUE";
                }
             }
             return 
    "FALSE";
     }
     
    Até Já.
     

Partilhar esta Página