<?php
/*
 * Created = 17-May-06
 * Author = Marcos Regis
 * version =  0.2
 * description =  Fun��o que converte e redimensiona imagens
 * 
 */
?>
<?php
/*    Images vars    */
$maxLarg = "200";    //    Max Width
$maxAlt = "200";    //    Max Height
$maxTam = "400";    //    Max Size (Kbytes);
$mimeImg = "png";    //    Mime Type to save imagefiles

function treat_image($filename,$destImage=null){
  if (!is_file($filename) || is_file($destImage)) return false;
  if ($destImage===FALSE) $destImage=$filename;
    global $maxLarg;
    global $maxAlt;
    global $maxTam;
    global $mimeImg;
    list($width, $height, $type, $attr) = getimagesize($filename); // pegando os atributos
    $percent = min(round(($maxLarg / $width),2),round(($maxAlt/$height),2),1); // verificando se a imagem
    // j� n�o tem um tamanho que seja desnecess�rio interven��o

    $newwidth = floor($width * $percent); // Pegando a nova largura proporcional para comparar posteriormente
    $newheight = floor($height * $percent); // O mesmo que a largura s� que para a altura
    switch ($type) {
/* Mime Types poss�veis
1 = GIF, 2 = JPG, 3 = PNG, 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, 15 = WBMP, 16 = XBM 
*/
               case 2 : $source  = imagecreatefromjpeg ($filename);
                            break;
                   case 1 : $source  = imagecreatefromgif  ($filename);
                             break;
                   case 3 : $source  = imagecreatefrompng  ($filename);
                             break;
            // case 6 : // Windows Bitmap. Pode-se incluir uma chamada de conversao aqui
                   default    : $stop = true;
                      break;
           }

    // Load
    $dest = imagecreatetruecolor($newwidth, $newheight);

    // Resize
    imagecopyresized($dest, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

    // Output
    switch($mimeImg){
      case "gif":imagegif($dest, preg_replace("@\.\w+$@","",$destImage).".gif" );
      case "png":imagepng($dest, preg_replace("@\.\w+$@","",$destImage).".png" );
      case "jpg":imagejpeg($dest, preg_replace("@\.\w+$@","",$destImage).".jpg" );
    }       
       imagedestroy($source);    
       imagedestroy($dest);
    return preg_replace("@\.\w+$@","",basename($destImage) ).".$mimeImg";
}
?>