Olá, bom dia.

Estou com um problema com a clase GD, para redimensionamento de imagens.
Eu tenho um script que funciona com um valor fixo, por exempo 100x100 e tal.
Mas eu preciso de algo um pouco diferente.

Minha idéia é definir um tamanho máximo, por exemplo 500x500. Se a imagem
for maior que essa medida máxima, o script redimensiona proporcionalmente
até que as duas medidas (altura e largura) sejam menores que 500.

Quando um dos lados for menor que 500, por exemplo largura 300, e altura =
600, ele deve redimensionar proporcionamente para que a largura máxima seja
300, e a algura menor que 500. É aqui que a coisa ta pegando... não estou
conseguindo fazer esse algorítmo...

Alguem poderia me ajudar?

O script que eu tenho é o seguinte:

    $dir = "../../imagens/noticias/".$_GET['id'];
    $nome = $_GET['foto'].".jpg";
    //cria
    move_uploaded_file($_FILES["Filedata"]['tmp_name'], $dir."/". $nome);

    ////IMAGEM GRANDE
        //aqui a url da imagem que sera criada a miniatura
        $imagem = $dir."/". $nome;

        $im = imagecreatefromjpeg($imagem); //criar uma amostra da imagem
original
        $largurao = imagesx($im);// pegar a largura da amostra
        $alturao = imagesy($im);// pegar a altura da amostra

        //miniatura
        $altura = 350;
        $largura = 300;
        $nova = imagecreatetruecolor($largura,$altura);//criar uma imagem em
branco

        $largurad = ($largurao*$largura)/$alturao;
        $alturad = ($alturao*$altura)/$largurao;

        if($largurao < $alturao){
              imagecopyresampled($nova,$im,0,0,0,0, $alturad, $altura,
$alturao, $largurao);
        }else{
              imagecopyresampled($nova,$im,0,0,0,0, $largurad, $altura,
$largurao, $alturao);
        }

        imagejpeg($nova, $imagem, 100);//cria imagem jpeg

        //libera a memoria usada na miniatura
        imagedestroy($nova);





-- 
Alexandre Bini
18 3641-4382
msn: [EMAIL PROTECTED]

-- 
Alexandre Bini
18 3641-4382
msn: [EMAIL PROTECTED]

--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a