Para muitos programadores PHP, é fundamental que após o upload as imagens seja redimensionadas para não ocupar muito espaço no disco. E isso não é difícil!
Mas porque perder tempo com isso? Não é melhor limitar o upload de imagens, permitindo apenas uma resolução? Sim.. É mais fácil pra você.. mas não pro end-user. É melhor você perder uma ou duas horas e fazer um sistema muito mais fácil de ser usado e facilitar a vida do usuário… Vai ser melhor pra você e pra ele, acredite.
Existe uma classe pronta de PHP que eu gosto muito, chama WideImage. Vou mostrar aqui como usá-la para redimensionar (resize) e cortar (crop) imagens automaticamente, gerando (ou não) arquivos novos. Para um sistema que gera miniaturas (thumbs) isso é mais do que o suficiente.
<?php // Chama o arquivo com a classe WideImage require('/caminho/WideImage.inc.php'); // Carrega a imagem a ser manipulada $image = wiImage::load('/caminho/foto.jpg'); // Redimensiona a imagem $image = $image->resize(400, 300); // Salva a imagem em um arquivo (novo ou não) $image->saveToFile('/caminho/nova_foto.jpg'); ?>
<?php // Chama o arquivo com a classe WideImage require('/caminho/WideImage.inc.php'); // Carrega a imagem a ser manipulada $image = wiImage::load('/caminho/foto.jpg'); // Corta a imagem (Argumentos: X1, Y1, X2, Y2) $image = $image->crop(10, 20, 110, 120); // Faz um quadrado da posição [X1;Y1] até [X2;Y2] // Salva a imagem em um arquivo (novo ou não) $image->saveToFile('/caminho/nova_foto.jpg'); ?>
<?php // Chama o arquivo com a classe WideImage require('/caminho/WideImage.inc.php'); // Carrega a imagem a ser manipulada $image = wiImage::load('/caminho/foto.jpg'); // Salva a imagem em um arquivo com 80% de qualidade $image->saveToFile('/caminho/nova_foto.jpg', null, 80); ?>
Via thiagobelem.net
Comentários: 0 | |