Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/04/2011, 10:43
Avatar de Lautaro_eb
Lautaro_eb
 
Fecha de Ingreso: mayo-2010
Ubicación: Bariloche, Argentina
Mensajes: 284
Antigüedad: 13 años, 10 meses
Puntos: 24
Thumbais en php Solo Cuadrados u.u

Buenas Aller cuando suvi una imagen rectangular EJ: Alto 150 x 100 la funcion que cree la creo solamente cuadrada esto Causa que la imagen se pixe como ago para Saver si es rectangular y que calse bien ?
Código PHP:
function Createtumbails($imagen,$ancho,$style='',$border '')
{
    
/* Intentar abrir */
    
$nombre=basename($imagen);
    
$formt explode(".",$nombre);
    
$origenfrom dirname($imagen)."/";
    if(!
file_exists("imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1]) && is_int($ancho)){
        
$sizeimg getimagesize($imagen);
        echo 
"<pre>";
        
print_r($sizeimg);
        echo 
"</pre>";
        
// Carcgar
        
if($sizeimg[0] == $sizeimg[1]){
            
$ValorA['alto'] = $ancho;
            
$ValorA['ancho'] = $ancho;
        }
        else if(
$sizeimg[0] > $sizeimg[1]){
            
$ValorA['alto'] =$ancho;
            
$ValorA['ancho'] = $ancho*2;
        }
        else if(
$sizeimg[0] < $sizeimg[1]){
            
$ValorA['ancho'] = $ancho;
            
$ValorA['alto'] = $ancho/2*3;
        }
        else{
            
$ValorA['alto'] = $ancho;
            
$ValorA['ancho'] = $ancho;
        }
        
//echo $ValorA['ancho']."<br />".$ValorA['alto'];
        
$thumb imagecreatetruecolor($ValorA['ancho'], $ValorA['alto'])
          or die(
'No se puede Iniciar el nuevo flujo a la imagen GD');
        switch(
strtoupper($formt[1])){
            case 
"JPEG" :{
                
$origen imagecreatefromjpeg($imagen);
                break;
            }
            case 
"JPG" : {
                
$origen imagecreatefromjpeg($imagen);
                break;
            }
            case 
"GIF":{
                
$origen imagecreatefromgif($imagen);
                break;
            }
            case 
"PNG":{
                
$origen imagecreatefrompng($imagen);
                break;
            }
        }
/*        if(!$origen)
        {
            $im  = imagecreatetruecolor($ancho, $ancho);
            $fondo = imagecolorallocate($im, 255, 255, 255);
            $ct  = imagecolorallocate($im, 0, 0, 0);
            imagefilledrectangle($im, 0, 0, $ancho,  $ancho, $fondo);
            imagestring($origen, 1, 5, 5, 'Error cargando ' . $imagen, $ct);
        }*/
        
imagecopyresized($thumb$origen0000$ValorA['ancho'], $ValorA['alto'], $sizeimg[0],$sizeimg[1]);
        switch(
strtoupper($formt[1])){
            case 
"JPEG":{
                
imagejpeg($thumb,"imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1]);
                break;
            }
            case 
"JPG":{
                
imagejpeg($thumb,"imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1]);
                break;
            }
            case 
"GIF":{
                
imagegif($thumb,"imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1]);
                break;
            }
            case 
"PNG":{
                
imagepng($thumb,"imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1]);
                break;
            }
        }
        
$saveimg "imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1];
        
imagedestroy($thumb);
        return 
"<img border='".$border."' style='".$style."' src='".$saveimg."' />";
    }
    else { 
        return 
"<img border='".$border."' style='".$style."' src='imagenes/thums/".$formt[0]."x".$ancho.".".$formt[1]."' />";
    }

Muchas Gracias.