Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 20th, 2012  |  syntax: None  |  size: 1.22 KB  |  hits: 11  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. <?php
  2. function minifigura($archivo,$miniatura) {
  3.         $miniatura_ancho = 50;
  4.         $miniatura_alto = $miniatura_ancho;
  5.        
  6.         if(preg_match('/\.gif$/i',$miniatura)) {
  7.                 $fuente_imagen = imagecreatefromgif($archivo);
  8.         } elseif(preg_match('/\.png$/i',$miniatura)){
  9.                 $fuente_imagen = imagecreatefrompng($archivo);
  10.         } else {
  11.                 $fuente_imagen = imagecreatefromjpeg($archivo);
  12.         }a
  13.        
  14.         $ancho = imagesx($fuente_imagen);
  15.         $alto = imagesy($fuente_imagen);
  16.        
  17.         if(($alto > $miniatura_alto) or ($ancho > $miniatura_ancho)){
  18.                 if($ancho > $alto){
  19.                         $radio = $miniatura_ancho/$ancho;
  20.                 } else {
  21.                         $radio = $miniatura_alto/$alto;
  22.                 }
  23.                 $nuevo_ancho = round($ancho * $radio);
  24.                 $nuevo_alto = round($alto * $radio);
  25.                 $imagen_final = imagecreatetruecolor($nuevo_ancho,$nuevo_alto);
  26.                 imagecopyresampled($imagen_final,$fuente_imagen, 0, 0, 0, 0, $nuevo_ancho, $nuevo_alto, $ancho, $alto);
  27.                
  28.                 imagedestroy($fuente_imagen);
  29.         } else {
  30.                 $imagen_final = $fuente_imagen;
  31.         }
  32.        
  33.         if(preg_match('/\.gif$/i',$miniatura)) {
  34.                 imagegif($imagen_final,$miniatura);
  35.         } elseif(preg_match('/\.png$/i',$miniatura)){
  36.                 imagepng($imagen_final, $miniatura, 9);
  37.         } else {
  38.                 imagejpeg($imagen_final, $miniatura);
  39.         }
  40.        
  41.         imagedestroy($imagen_final);
  42. }
  43. ?>