tiaguinho 0 Denunciar post Postado Fevereiro 9, 2004 Caras.....to criando um site aonde tem um mural de fotos.Queria que no "admin" ele não só copiasse (upload) as imagens pro server mas sim que uma das cópias fosse como miniatura, ou seja, que ele alterasse o tamanho da minha imagem.O tamanho pode ser pré definido...será q alguém pode me ajudar???no aguardo...Tiaguinho B) Compartilhar este post Link para o post Compartilhar em outros sites
Fagner 1 Denunciar post Postado Fevereiro 9, 2004 Ae Thiaguinho... segue codigo de criaçao de thumbs.. agora eh so implementar nos uploads de fotos.. /// CODIGO PARA GERACAO DE THUMBS /////// DEFINE A IMAGEM DA QUAL SERÁ GERADA A MINIATURA // Lembrar que essa imagem tem que estar no diretório do script... // .. nenhum teste será feito para saber se ela existe $imagem = "galeria/images/$reg[pasta]/$reg[foto01]"; // Tipo: JPG// DEFINIR O NOME DO ARQUIVO PARA O THUMBNAIL $thumbnail = explode('.', $imagem); $thumbnail = $thumbnail[0]."_thumbnail.jpg";// DEFINIR AS DIMENSÕES PARA O THUMBNAIL $x = 60; // Largura $y = 50; // Altura// LÊ A IMAGEM DE ORIGEM $img_origem = ImageCreateFromJPEG($imagem);// PEGA AS DIMENSÕES DA IMAGEM DE ORIGEM $origem_x = imagesx($img_origem); // Largura $origem_y = imagesy($img_origem); // Altura// ESCOLHE A LARGURA MAIOR E, BASEADO NELA, GERA A LARGURA MENOR if($origem_x > $origem_y) { // Se a largura for maior que a altura $final_x = $x; // A largura será a do thumbnail $final_y = floor($x * $origem_y / $origem_x); // A altura é calculada $f_x = 0; // Colar no x = 0 $f_y = round(($y / 2) - ($final_y / 2)); // Centralizar a imagem no meio y do thumbnail } else { // Se a altura for maior ou igual à largura $final_x = floor($y * $origem_x / $origem_y); // Calcula a largura $final_y = $y; // A altura será a do thumbnail $f_x = round(($x / 2) - ($final_x / 2)); // Centraliza a imagem no meio x do thumbnail $f_y = 0; // Colar no y = 0 }// CRIA A IMAGEM FINAL PARA O THUMBNAIL $img_final = ImageCreate($x,$y);// COPIA A IMAGEM ORIGINAL PARA DENTRO DO THUMBNAIL ImageCopyResized($img_final, $img_origem, $f_x, $f_y, 0, 0, $final_x, $final_y, $origem_x, $origem_y);// SALVA O THUMBNAIL ImageJPEG($img_final, $thumbnail);// LIBERA A MEMÓRIA ImageDestroy($img_origem); ImageDestroy($img_final);//// FIM DO CODIGO PARA GERAR THUMBS.. ////// Compartilhar este post Link para o post Compartilhar em outros sites
marcelo_r_o 0 Denunciar post Postado Fevereiro 9, 2004 seguinte galeraesse código aí gera o Thumb com dimensões 60 x 50. Como faço se eu tiver fotos de dimensões diferentes? Tipo, fotos verticais, horizontais etc...Alguém sabe como fazer de outra forma, sem precisar estabelecer realmente as dimensões, fazendo o esquema por porcentagem sei lá!?Aguardo, Compartilhar este post Link para o post Compartilhar em outros sites
Galaci 0 Denunciar post Postado Fevereiro 9, 2004 le o código denovo =) Compartilhar este post Link para o post Compartilhar em outros sites
Tablito 0 Denunciar post Postado Fevereiro 19, 2004 estou com um probleminha referente a esse script.. a thumb fica distorcia, deêm uma olhada Original: http://www.jraj.brturbo.com/teste/Dudanobanho2.jpg Thumb Gerada pelo codigo: http://www.jraj.brturbo.com/teste/Dudanoba...2_thumbnail.jpg como possoresolver isso? qual o erro? Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Fevereiro 19, 2004 No lugar de ImageCreate coloca ImageCreateTrueColor ;) Compartilhar este post Link para o post Compartilhar em outros sites
Tablito 0 Denunciar post Postado Fevereiro 19, 2004 beleza.. deu isso:Warning: imagecreatetruecolor(): requires GD 2.0 or later in /home/nsdata/fusiondigital/public_html/junior/testes/fotos/teste_resize.php on line 37ou seja, meu servidor tem biblioteca GD inferior à 2.0 :blink: dancei :( Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Fevereiro 19, 2004 Ficou no pó hehe, baixa a última versão (não a 5.0 que é beta, acho que é 4.3.alguma_coisa) que a GD 2.0 já vem junto. ;) Compartilhar este post Link para o post Compartilhar em outros sites
Tablito 0 Denunciar post Postado Fevereiro 19, 2004 Opa!! fiz em um teste com a versão do PHP que tem o comando ImageCreateTrueColor, mas a imagem ficou idêntica àquela que tava distorcida :o :blink: que que houve? vlw Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Fevereiro 19, 2004 Então nem sei, era pra ter ficado certo. Compartilhar este post Link para o post Compartilhar em outros sites
Tablito 0 Denunciar post Postado Fevereiro 25, 2004 alguem pode me ajudar com isso?? ainda nao achei a solução para este problema :unsure: vlw Compartilhar este post Link para o post Compartilhar em outros sites
Tablito 0 Denunciar post Postado Fevereiro 26, 2004 alguem pode me ajudar com isso?? ainda nao achei a solução para este problema :unsure: vlw :huh: Compartilhar este post Link para o post Compartilhar em outros sites
tiaguinho 0 Denunciar post Postado Abril 6, 2004 Ficou no pó hehe, baixa a última versão (não a 5.0 que é beta, acho que é 4.3.alguma_coisa) que a GD 2.0 já vem junto. ;) Aonde encontro essa biblioteca???URL???? Compartilhar este post Link para o post Compartilhar em outros sites
arthur_paredes 0 Denunciar post Postado Maio 24, 2004 Para não distorcer use ImageCopyResampled em vez de ImageCopyResized Compartilhar este post Link para o post Compartilhar em outros sites
klawdyo 0 Denunciar post Postado Maio 25, 2004 O Código abaixo vai listar o conteúdo da pasta definida abaixo, e gerar as miniaturas para todas elas... PHP [/tr][tr] <?php $fotos_eventos_pasta="pasta1";//altere aqui echo "<b>Reindexando arquivos da Pasta $fotos_eventos_pasta</b><br>"; $evento="$fotos_eventos_pasta";//pasta que estão os arquivos divididos por eventos $handle=opendir("fotos/fotos/$evento/imagens/"); while ($image = readdir($handle)) { $arquivo="fotos/fotos/$evento/imagens/$image";//altere aqui $thumbnail="fotos/fotos/$evento/thumbs/m_$image";//altere aqui if ($image == '.' OR $image == '..'){echo"";}else { if(file_exists($arquivo)){ $img = imagecreatefromjpeg("$arquivo"); // imagem original $largurao = imagesx($img);// pegar a largura da amostra $alturao = imagesy($img);// pegar a altura da amostra //$alturad = 50; // altura em pixels //$largurad = ($largurao*$alturad)/$alturao;// gera uma largura a partir da altura $largurad = 50; // largura em pixels $alturad = ($alturao*$largurad)/$largurao;// calcula a altura a partir da largura $thumb = imagecreatetruecolor($largurad,$alturad); // cria a imagem que receberá o thumb imagecopyresampled($thumb,$img,0,0,0,0,$largurad,$alturad,$largurao,$alturao); // cria o thumbnail imagejpeg($thumb, "$thumbnail",100); // salva o thumb em um arquivo definido por você echo "Arquivo $arquivo reindexado com sucesso!!!<br>"; }else{echo"";} }//fecha if que vê se é "." ou ".." }//fecha while closedir($handle); //////////////////////////////////// echo"<br><b>Arquivos da pasta ". strtoupper($evento) ." reindexados com sucesso!!!"; ?> [/tr] Compartilhar este post Link para o post Compartilhar em outros sites