Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Desbravador

Exibir imagem temporária

Recommended Posts

E ai pessoal estou desenvolvendo um script e estou precisando de uma ajuda.

Seguinte possuo a pasta imagens e em alguns momentos vou precisar exibir a miniatura da imagem,

gostaria de saber se tem como eu gerar um thumb temporário ou seja, exibi-losem salvar a mini imagem na minha pasta imagens.

 

Tem puder ajudar posta ai,

valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode ter um script que se comporta como imagem.

Basta não salvar a imagem.

 

Por exemplo: ao gerar a miniatura com imagejpeg(), não especifique o caminho da imagem onde ela deverá ser salva. Nesse caso, ela será exibida, mas não será salva

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode ter um script que se comporta como imagem.

Basta não salvar a imagem.

 

Por exemplo: ao gerar a miniatura com imagejpeg(), não especifique o caminho da imagem onde ela deverá ser salva. Nesse caso, ela será exibida, mas não será salva

Então Beraldo meu script esta assim:

<?php 
// imagem a ser aberta grande
$imagem = "bobesponja.jpg";

//definição das dimensões da thumb a ser gerada
$largura = 80;
$altura  = 65;

//Nome da miniatura
$imagem_gerada = explode(".", $imagem);

//pegamos o conteudo do array e concatenamos a _min.jpg.
$imagem_gerada = $imagem_gerada[0]."_mini.jpg";

//criação de uma nova imagem que será a miniatura da original
$imagem_original = imagecreatefromjpeg($imagem);

//pegamos a altura e a largura da imagem original
$pontoX = imagesx($imagem_original);
$pontoY = imagesy($imagem_original);

//criamos o thumbnail  com a função imageCreateTrueColor para suportar um grande numero de cores
$imagem_fin = imagecreatetruecolor($largura,$altura);

//copia o conteudo da imagem original para a miniatura
imagecopyresampled($imagem_fin,$imagem_original,0,0,0,0, $largura+1,$altura+1,$pontoX,$pontoY);
 
//salva a imagem
imagejpeg($imagem_fin,$imagem_gerada);


//libera a memoria
imagedestroy($imagem_original);
imagedestroy($imagem_fin);


?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> Mini Imagens </TITLE>
 </HEAD>
 
 <script language="JavaScript" >
 function abre(pagina){
 	window.open('<?=$imagem;?>','JANELA','toolbar=no','location=no','menubar=yes','scrollbars=yes','resizable=no');
 }
 
 </script>

 <BODY>
 <center>
 <a href = "#" onclick="abre('visualiza');">
 <img src = "<?=$imagem_gerada;?>">
 </center>
  
 </BODY>
</HTML>

Tentei fazer o q você falou porém num deu certo.

Se puder me ajudar vou ficar muito grato.

abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por que não deu certo?

Apareceu erro?

 

Então assim funciona porém cria a imagem bobespoja_mini.jpg.

e eu não queria salvar essa imagem.

 

abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use só o primeiro argumento de imagejpeg()

 

Lei a a documentação com atenção

 

http://www.php.net/imagejpeg

Entaum Beraldo quando passo somente um paramatro e o segundo passo null,

vem o espaço da imagem vazio .

Agora não existe a imagem porém o endereço dela continua sendo o mesmo não criou uma imagem temporária ou eu estou chamando da forma errada?

 

obrigado pelos esclarecimentos até agora.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você tem que fazer esse script se comportar como uma imagem

Use header:

 

header("Content-type: image/jpeg");

 

Retire o código HTML, pois o script "será uma imagem"

O reultado que me vem é essa sequencia de caracteres.

 

ÿØÿàJFIFÿþ>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality ÿÛC    $.' ",#(7),01444'9=82<.342ÿÛC  2!!22222222222222222222222222222222222222222222222222ÿÀAP"ÿÄ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊ
ÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉ
ÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ ?‹c@ÏsÖ¥VÚä’p&£ Å"¨mÊݽ*ý­m°d†;‡¶k®µuBŒêÅkxÊœªÔŒÑ®öp«…¿ºæ¤xnc#̶™sÓä'ùUó.£iuuy"–`q Ø3Î=0;ž*ÁÖ¦kȧH¶s²ŒÈÁÏ`9ç§5áÃ8ÇV÷©SM|ÏGû2„U¥&e›[ÀͤÁOû<þ]iñØßʹ[Yÿk úÜ]Rá~ÖÓZˆbÂïvã î3’sÀ÷ÅQ·Õ'G¸Hó#¹m†0LcŒÎ8ÏNý)ÛU‹q¦´Àa ýé2Šéúƒ¶ß³ìÇV‘€ùÓÆ•¨8X…”ÿ“åþU¦d-§Ç òJ×g1Éü® /=y«7Ñ‹D¶Ê„\ uÇƼêùÖaN§$¬Ÿ¡¼rÌ=¯¿ÌåI¡›dÁv*’)áˆëS†¢/¬÷û$Òˆ÷öäb²n-fÓˆ Ä[Àçè {Ùvdê?gYëß¹åb°Š>õ5¡dAtP°©tÈLÚ¤¨ŒT ³áÉþ´ÇÆ+ çºJñAr¬¼‘ÇŠ3™(á\S|š„±ö;½/M²™/´û‹Ò2Tï‚‘ž?þB³­>Cg¨\êªÝ\I*°*xàÿçPéÂ;{ ëQ!c„Ú îï’ó®Š ëˆŽÞiJžÏ 8ó5âàóXЂ§5dº÷=šøGÌO‹§á[[d“Ë%@㟟©'ñ&¸ý#áChúœ·‚üïÒ4¥Î^6Ôšê­ä½°.ñ͇bï\ '®Þëú×-â]jöþøYÈéT” ã¹gÿ­]°ÎhòÞ›»&žUgÊô:ûña‰¥´±³E±bÁmÀŒŸ­eêLd¹‚ØŸ‘v÷Æ0?_Ò¸Xñ\œ‚ ÿ*܃Uòí¤»½$¥¢§øœÿÖÅx¸ªßZ­Ûc·ƒú­-%pµÒ†™©Ýêú•ÔA¤;Pç «Û¯~¦jÒI6¤#cû¤@èBNy5¤¿cñ—òÁº"|ÄGãzâ°’G¸wšS™ˆ>€€z¹U/kˆMý“çq“å¤üÇØõ5sEû"µÌ×;·‰ ¹9ÈÀNsY (éÔ“€SZúzKm¦ßÅqjÈò"—^vp Ç\ŽMzüCM}RÞhÇ(rUî»—ÛÈ ÙÁ‰÷©.cÁ9}½;Š}Ƶ6Ox#h¢É›ÉB|±Ž¹Î öÖ’ÎÒÝ_±å@土NäšÅÖ|ŸZX*NS´5815%(¤Î~}^Ý´kq¦îH¤o)I!GR?ÇÞ¨ÆB(Uà ³®YMa­´s²2”Ì%jíî1ØçúU=Ø÷ùF Q¥Í-Ùó8ê®Såè‹ÞŽsy=Ôk„E æ–Sœ¹ã$c&§Õu˜íåvâæèb4‚<` ü¾ag' ýz×:·sFO*Fç,¨äjÁQ  ùTºäŽÃ#&•|ž¶&¼§^~çDŽª8ÈR§SŽ½Î–×ÄWvò³½šLî~gÎ úsÀö©.¼iyÉŠ¾€©È¬ÕÚÉÁªÁÈLgyù¶sn3W[‡p)sFß«:cŒªôr:¼qwpƒÊ±Lú–þ™þ´öñUìñ˜e°‰•¸$¶>™¬hBFª••,[®1ïëÚ®ä{TPᬣyÓ×ÕŽxÚ©Ù2Å÷‰å‹Nò_OQ ‘Ÿ-ð0@?*»áï[¥Ì±›7w3*¢³6à ù?sš±Î.1ÛùŠ¯áøLþ!±P>ë>À)?Ïur\& R½%f“dÇ:“Š‘Ñø‹X]Zú=´F"¾[ ¶@ãÛ嬲r=j»ÌævìÒ»~li µé`àÕ7»Hò17•V@j9>ã}(¢»ÉE{/õMQ?úÊ(¥§bØЋýE>ß©¢Š…ñÔmïüy¿ùïV<ÿ#׳ÿ5¢ŠãÍÿä]WÐÚ‡ñbUîÓûQEtáÿ…Eù]_ŸÿÙ

Será que pode ser a versãogd-jpeg v1.0?

Compartilhar este post


Link para o post
Compartilhar em outros sites

você colocou o header()?

Mostre o script que utilizou

Ficou assim:

<? header("Content-type: image/jpeg");?>
<?php
/*
 * Created on 25/10/2008
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
 */
?>

<?php 
// imagem a ser aberta grande
$imagem = "bobesponja.jpg";

//definição das dimensões da thumb a ser gerada
$largura = 80;
$altura  = 65;

//Nome da miniatura
$imagem_gerada = explode(".", $imagem);

//pegamos o conteudo do array e concatenamos a _min.jpg.
$imagem_gerada = $imagem_gerada[0]."_mini.jpg";

//criação de uma nova imagem que será a miniatura da original
$imagem_original = imagecreatefromjpeg($imagem);

//pegamos a altura e a largura da imagem original
$pontoX = imagesx($imagem_original);
$pontoY = imagesy($imagem_original);

//criamos o thumbnail  com a função imageCreateTrueColor para suportar um grande numero de cores
$imagem_fin = imagecreatetruecolor($largura,$altura);

//copia o conteudo da imagem original para a miniatura
imagecopyresampled($imagem_fin,$imagem_original,0,0,0,0, $largura+1,$altura+1,$pontoX,$pontoY);
 
//salva a imagem
imagejpeg($imagem_fin,null);


//libera a memoria
imagedestroy($imagem_original);
imagedestroy($imagem_fin);

?>
<img src = "<? echo $imagem_gerada;?>">

Compartilhar este post


Link para o post
Compartilhar em outros sites

troque TODOS os <? por <?php e tente de novo

Entaum Beraldo num tá vindo mais toda quela sequencia de caracteres.

agora vem apenas o quadrinho da imagem vazio.

 

o script ficou assim:

 

<?php header("Content-type: image/jpeg");


$imagem = "bobesponja.jpg";
$largura = 80;
$altura  = 65;

$imagem_gerada = explode(".", $imagem);
$imagem_gerada = $imagem_gerada[0]."_mini.jpg";
$imagem_original = imagecreatefromjpeg($imagem);

//pegamos a altura e a largura da imagem original
$pontoX = imagesx($imagem_original);
$pontoY = imagesy($imagem_original);

$imagem_fin = imagecreatetruecolor($largura,$altura);
imagecopyresampled($imagem_fin,$imagem_original,0,0,0,0, $largura+1,$altura+1,$pontoX,$pontoY);
 
//salva a imagem
imagejpeg($imagem_fin,null);

imagedestroy($imagem_original);
imagedestroy($imagem_fin);

?>
<img src = "<?php echo $imagem_gerada;?>">

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá...
Achei do caral... esse script.
Porém, estou com algumas dúvidas.

Eu testei o código aqui, e pra mim gerou corretinho.. uma imagem..
Só que, ao tentar salvar a imagem, ele salva como um arquivo .php. Sempre.
Pra mim isso não tem problema, seria até uma ferramenta ótima pra esconder diretórios de imagens e etc,
A minha dúvida é:
Realmente está sendo gerada uma imagem pequena em tamanho de arquivo???
Como eu faço pra ter essa certeza???
Teria como eu, salvar essa imagem pra eu ver o tamanho em kb desse arquivo gerado???


O código que eu usei é exatamente o do última resposta:

<?php header("Content-type: image/jpeg");


$imagem = "bobesponja.jpg";
$largura = 80;
$altura = 65;

$imagem_gerada = explode(".", $imagem);
$imagem_gerada = $imagem_gerada[0]."_mini.jpg";
$imagem_original = imagecreatefromjpeg($imagem);

//pegamos a altura e a largura da imagem original
$pontoX = imagesx($imagem_original);
$pontoY = imagesy($imagem_original);

$imagem_fin = imagecreatetruecolor($largura,$altura);
imagecopyresampled($imagem_fin,$imagem_original,0,0,0,0, $largura+1,$altura+1,$pontoX,$pontoY);

//salva a imagem
imagejpeg($imagem_fin,null);

imagedestroy($imagem_original);
imagedestroy($imagem_fin);

?>
<img src = "<?php echo $imagem_gerada;?>">

 

 

//EDITANDO O POST:

Eu testei primeiramente, com o Chrome, e ele fez exatamente o que eu postei acima, mas no IE e no FF, ele deu certinho a opção de salvar a imagem. Então eu pude ver o tamanho e o resultado que eu solicitei acima ae.

 

Agora, só me resta conseguir implementar fazendo consulta no BD para gerar várias...

 

Ficou perfeito.

 

Ótimo Post.

 

 

//EDITANDO O POST:

 

É, realmente acontece o que o Desbravador falou aí.

Os testes que eu fiz, foram apenas com o código acima postado, no arquivo php.

Mas quando coloca outro conteudo no arquivo php, sempre só aparece apenas a imagem.

Se colocar algo que não seja o código postado acima, ele simplesmente não funciona.

 

Alguem tem algo a dizer sobre isso???

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.