Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou mexendo em um código que eu tinha de upload, ainda vou fazer modificações, mas eu não sei porque o nome da miniatura não recebe o nome da original, aparece somente _mini.jpg:
<?php
if(isset($_POST[enviar])){
$nome = $_FILES[imagem][name];
$temporario = $_FILES[imagem][tmp_name];
$diretorio = "../galeria/".$nome;
move_uploaded_file($temporario,$diretorio);
// define a imagem a partir da qual será gerada a miniatura
$imagem = $temporario;
// ** configurações da miniatura *****
$tamanho_fixo = "N"; // S ou N
$largura_fixa = 192; // usado somente com tamanho_fixo=S
$altura_fixa = 144; // usado somente com tamanho_fixo=S
$percentual = 40; // usado somente com tamanho_fixo=N
// **************************************
if(!file_exists($imagem))
{
echo "Arquivo da imagem não encontrado!";
exit;
} echo "O percentual deve ser um número entre 1 e 100!";
exit;
}
// monta o nome do arquivo resultante
$arquivo_miniatura = explode('.', $imagem);
$arquivo_miniatura = $arquivo_miniatura[0]."_mini.jpg";
// lê a imagem de origem e obtém suas dimensões
$img_origem = ImageCreateFromJPEG($imagem);
$origem_x = ImagesX($img_origem);
$origem_y = ImagesY($img_origem);
// se não for tamanho fixo, calcula as dimensões da miniatura
if($tamanho_fixo=="S")
{
$x = $largura_fixa;
$y = $altura_fixa;
} $x = intval ($origem_x * $percentual/100);
$y = intval ($origem_y * $percentual/100);
}
// cria a imagem final, que irá conter a miniatura
$img_final = ImageCreateTrueColor($x,$y);
// copia a imagem original redimensionada para dentro da imagem final
ImageCopyResampled($img_final, $img_origem, 0, 0, 0, 0, $x+1, $y+1, $origem_x , $origem_y);
// salva o arquivo
ImageJPEG($img_final,"../miniaturas/$arquivo_miniatura");
// libera a memória alocada para as duas imagens
ImageDestroy($img_origem);
ImageDestroy($img_final);Carregando comentários...