Script não redimensiona imagem muito grande
Fala pessoal, tudo bem?
Tenho um script em PHP que uso para redimensionar imagens.
O problema é que, aparentemente, ele não está redimensionando imagens com mais 3bm! ou com resolução muito alta.
Ele redimensiona sem problemas qualquer imagem menor que 3mb, ou com resoluções menores.
Já coloquei na página os init_set desta forma:
ini_set('memory_limit','300M');
ini_set('post_max_size','150M');
ini_set('upload_max_filesize','100M');
ini_set('max_execution_time','0');
ini_set('session.gc_maxlifetime','3600');
Creio que funciona, já que o upload de imagens grandes não gera nenhum problema. O problema está em redimensionar as imagens!
O script está aqui:
<?php
$larg = $_GET['larg'];
$alt = $_GET['alt'];
// recebendo a url da imagem
$filename = $_GET['img'];
$percent = 0.10;
// Cabeçalho que ira definir a saida da pagina
header('Content-type: image/jpeg');
// pegando as dimensoes reais da imagem, largura e altura
list($width, $height) = getimagesize($filename);
#setando as proporcoes desejadas
$largura = $larg;
$altura = $alt;
#setando a proporcao da miniatura
if($height > $width) {
$new_height = $altura;
$new_width = $width*$altura/$height;}else{
$new_width = $largura;
$new_height = $height*$largura/$width;
}
if($new_width > $largura){
$new_width = $largura;
$new_height = $height*$largura/$width;
}
if($new_height > $altura){
$new_height = $altura;
$new_width = $width*$altura/$height;
}
//gerando a a miniatura da imagem
$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
//o 3º argumento é a qualidade da imagem de 0 a 100
imagejpeg($image_p, null, 100);
imagedestroy($image_p);
?>
Será que alguem consegue me dar uma luz???
Discussão (11)
Carregando comentários...