Skip to content

Instantly share code, notes, and snippets.

@marttosc
Last active December 17, 2015 05:59
Show Gist options
  • Save marttosc/5561788 to your computer and use it in GitHub Desktop.
Save marttosc/5561788 to your computer and use it in GitHub Desktop.
Convertendo imagem usando PHP #gustavomarttos
<?php
function converterImagem($caminhoImagem, $novaImagem, $extensao, $unlink = true) {
/**
* Resgata a largura e altura da imagem que deve ser convertida.
*/
list($larguraOriginal, $alturaOriginal) = getimagesize($caminhoImagem);
$extensao = strtolower($extensao);
$imagem = null;
$tci = null;
/**
* Verifica qual é a extensão da imagem e cria a imagem.
*
* Obs: não permite *.bmp
*/
if ($extensao == 'png') {
$imagem = imagecreatefrompng($caminhoImagem);
} elseif ($extensao == 'gif') {
$imagem = imagecreatefromgif($caminhoImagem);
}
/**
* Cria uma nova imagem
*/
$tci = imagecreatetruecolor($larguraOriginal, $alturaOriginal);
/**
* Cria a imagem com os tamanhos e conteúdo da original
*/
imagecopyresampled($tci, $imagem, 0, 0, 0, 0, $larguraOriginal, $alturaOriginal, $larguraOriginal, $alturaOriginal);
/**
* Cria a imagem JPG, salvando ela no destino novo ($novaImagem) e com qualidade máxima (100).
*/
imagejpeg($tci, $novaImagem, 100);
/**
* Se a variável $unlink receber true, deleta a original do servidor.
*/
if ($unlink) {
unlink($caminhoImagem);
}
}
?>
<?php
$caminhoImagem = 'uploads/images/imagem.png';
/**
* [0] => 'uploads/images/imagem’
* [1] => 'png'
*/
$explode = explode('.', $caminhoImagem);
$extensao = end($explode);
/**
* 'uploads/images/imagem.jpg'
*/
$novaImagem = $explode[0] . '.jpg';
converterImagem($caminhoImagem, $novaImagem, $extensao, true);
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment