Redimensionamento de imagem JPEG

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

[ Hits: 6.930 ]

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

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

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

Conversor de arquivo Excel para um Array

Upload de arquivos com barra de progresso muito util

Mural de recados com arquivo de log


  

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