Redimensionando imagens com PHP

Publicado por Evaldo Barbosa 05/02/2009

[ Hits: 7.636 ]

Homepage: Em breve

Download redimensionar_imagens.php




Esta função é parte integrante de uma classe que criei para manipulação de arquivos de imagem, por isso os "$this". Você pode pegar e construir a sua classe a partir disso.

  



Esconder código-fonte

/**
* Cria uma miniatura a partir de uma imagem existente
*
* @param String $image_file
* @param String $type
* @param Integer $width
* @param Integer $height
*/
function resize($filename,$type="image/jpeg",$width=0,$height=0) {
if (!file_exists($filename)) {
$this->notFound();
}
//echo $filename;
//die();

$this->width = ($width > 0) ? $width : $this->width;
$this->height = ($height > 0) ? $height : $this->height;

header("Content-type: " . $type);
$dim = $this->getDimensions($filename);

list($old_width, $old_height) = getimagesize($filename);
$image_p = imagecreatetruecolor($dim["w"], $dim["h"]);
switch ($type) {
case "image/jpeg" : $image = imagecreatefromjpeg($filename); break;
case "image/gif" : $image = imagecreatefromgif($filename); break;
case "image/png" : $image = imagecreatefrompng($filename); break;
default : $image = imagecreatefromjpeg($filename); break;
}
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $dim["w"], $dim["h"], $old_width, $old_height);

switch ($type) {
case "image/jpeg" : imagejpeg($image_p, null, $this->jpeg_quality); break;
case "image/gif" : imagegif($image_p, null); break;
case "image/png" : imagepng($image_p, null); break;
default : imagejpeg($image_p, null, $this->jpeg_quality); break;
}

imagedestroy($image_p);
} 

Scripts recomendados

Upload de arquivos com PHP

Sistema de Noticias Simples

guarda num arquivo txt o host, ip, data e hora de acesso do visitante

Classe com método para inserir vídeos Vimeo e YouTube

Verificando dados por cep.


  

Comentários
[1] Comentário enviado por pothix em 06/02/2009 - 10:42h

Æ!!

Bem legal cara!
Usa o ImageMagic?

Há braços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts