Redimensionando imagens com PHP
Publicado por Evaldo Barbosa 05/02/2009
[ Hits: 7.829 ]
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.
/** * 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); }
Guestbook LivroLivre versão 2.0
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Unbuntu não atualiza o firmware [RESOLVIDO] (2)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (0)
Dúvidas sobre a originalidade de conteúdos online (10)
Erro de interface de Rede no Virt Manager dentro Debian 13 KDE (12)