Redimensionamento de imagem JPEG

Publicado por Sidiney Sodré Gali de Souza 17/11/2005

[ Hits: 6.539 ]

Download redimensionamento_jpeg.php




Esta função tem faz o redimensionamento de uma imagem JPEG. É claro que a qualidade não fica idêntica a um redimensionamento no Photoshop ou Fireworks, mas dá para usar tranquilamente.
O exemplo mostra como é fácil utilizar.
Ex.: redimensionamento($arquivo, $dir_destino);

  



Esconder código-fonte

<?php

function redimensionamento($pict, $dest_pict){
   
   $handle = @imagecreatefromjpeg($pict);

   $x=imagesx($handle);
   $y=imagesy($handle);
                                                   
       if($x > $y){                                
               $max = $x;                          
               $min = $y;                          
       }                                          
       if($x <= $y){                                
               $max = $y;                          
               $min = $x;                          
       }                                        

          //$size_in_pixel : largura da imagem em pixels
       $size_in_pixel = '40';

       $rate = $max/$size_in_pixel;
       $final_x = $x/$rate;
       $final_y = $y/$rate;

       if($final_x > $x) {
               $final_x = $x;
               $final_y = $y;
       }

       $final_x = ceil($final_x);
       $final_y = ceil($final_y);

       $black_picture = imageCreatetruecolor($final_y,$final_x);
       imagefill($black_picture,0,0,imagecolorallocate($black_picture, 255, 255, 255));
       imagecopyresampled($black_picture, $handle, 0, 0, 0, 0,$final_x, $final_y, $x, $y);

       if(!@imagejpeg($black_picture,$dest_pict.'/'.$pict, $size_in_pixel))
       imagestring($black_picture, 1, $final_x-4, $final_y-8, ".", imagecolorallocate($black_picture,0,0,0));
                       
       //Qualidade da Imagem = 100
       imagejpeg($black_picture,'', '100');
       imagedestroy($handle);
       imagedestroy($black_picture);
   }
   
$pict = "test.jpg";
$dest_pict = "C:/windows/temp";
redimensionamento($pict, $dest_pict);

?> 

Scripts recomendados

Mural de recados com arquivo de log

Abrindo arquivo e convertendo de um caracter para outro

Manipulação de arquivos CSV para gerar instrução SQL

Eliminar Todos os sub-diretórios de um Diretório

Classe em php para listar subdiretórios e arquivos em html (vs certa)


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts