Advertisement
Guest User

Untitled

a guest
Oct 21st, 2011
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.18 KB | None | 0 0
  1. <?php
  2.  
  3. // PARA REDIMENSIONAR IMÁGENES JPG Y GIF
  4.  
  5. header("Content-type: image/jpeg");
  6.                    
  7. $ancho_destino=$_GET["ancho_max"];              // Ancho máximo de la nueva imagen (thumbnail)
  8. $alto_destino=$_GET["alto_max"];                // Alto máximo de la nueva imagen (thumbnail)
  9.  
  10.  
  11. $imagen=$_GET["imagen"];                    // nombre de la imagen
  12.  
  13.  
  14. if(strstr($imagen,".jpg")){
  15.         $original = imagecreatefromjpeg($imagen);   //Abrir la imagen original
  16. }
  17. if(strstr($imagen,".gif")){
  18.         $original = imagecreatefromgif($imagen);    //Abrir la imagen original
  19. }
  20.  
  21.  
  22. //Ahora necesitamos saber de que tamaño es la imagen original:
  23. $ancho_original = imagesx($original);
  24. $alto_original = imagesy($original);
  25.  
  26.  
  27. if (($ancho_original <= $ancho_destino) && ($alto_original <= $alto_destino))
  28. {
  29.  
  30.     if(strstr($imagen,".jpg")){
  31.         imagejpeg($original,'',90);     // Mostrar la imagen a redimensionar
  32.     }
  33.     if(strstr($imagen,".gif")){
  34.         imagegif($original,'',90);
  35.     }
  36.  
  37.  
  38. }else{
  39.  
  40.     // Que el alto sea proporcional al ancho elegido
  41.     $alto_redimensionado = $ancho_destino * $alto_original / $ancho_original;  
  42.  
  43.     // Que el ancho sea proporcional al alto elegido
  44.     $ancho_redimensionado = $alto_destino * $ancho_original / $alto_original;
  45.  
  46.     if ($alto_redimensionado <= $alto_destino)
  47.     {
  48.            
  49.         // REDIMENSIONAR POR EL ALTO
  50.                
  51.         //Crear una imagen nueva (miniatura)
  52.         $thumb = imagecreatetruecolor($ancho_destino,$alto_redimensionado);
  53.                
  54.         //A continuación vamos a copiar la imagen original en la imagen en miniatura:
  55.  imagecopyresampled($thumb,$original,0,0,0,0,$ancho_destino,$alto_redimensionado,$ancho_original,$alto_original);
  56.                
  57.                
  58.     }else{
  59.        
  60.         // REDIMENSIONAR POR EL ANCHO
  61.                
  62.         //Crear una imagen nueva (miniatura)
  63.         $thumb = imagecreatetruecolor($ancho_redimensionado,$alto_destino);
  64.                
  65.         //A continuación vamos a copiar la imagen original en la imagen en miniatura:
  66.                 imagecopyresampled($thumb,$original,0,0,0,0,$ancho_redimensionado,$alto_destino,$ancho_original,$alto_original);
  67.                
  68.        
  69.                
  70.     }
  71.  
  72.     if(strstr($imagen,".jpg")){
  73.         imagejpeg($thumb,'',90);        //Por último, guardamos la imagen
  74.     }
  75.     if(strstr($imagen,".gif")){
  76.         imagegif($thumb,'',90);         //Por último, guardamos la imagen
  77.     }
  78.  
  79.                
  80. }
  81.  
  82. ?>
  83.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement