• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

wrproject

[PHP]sistema de redimensionamento de imagens

6 mensagens neste tópico

ola pessoal, deixo aqui um script que permite redimensionar as imagens que quiserem, neste exemplo só funciona para imagens JPEG, mas noutro tutorial eu explico como trabalhar com outras imagens.

aviso desdejá que é necessário ter a bbliooteca GD activada, senão o script não irá funcionar.

bem, aqui está o código.

<?php
if(isset($_POST['submit']))
{
// File and new size
$filename = 'psp-3.jpg';

// Get new sizes
list($width, $height) = getimagesize($filename);
$newwidth =$_POST['width'];
$newheight = $_POST['height']; 
// Load
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename); 
// Resize
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height); 
// Output
header("Content-type: image/jpeg");
imagejpeg($thumb);
echo "<a href=\"\">é necessário,colocar as dimensões, clique para voltar</a>";
}
else
{
echo "
<b>imagem actual<b>:";
list($width, $height) = getimagesize('psp-3.jpg');
echo " ".$width.x.$height;
echo "
<br>
<img src='psp-3.jpg'></img>
<br>
<br>
<form action=\"index.php\" method=\"post\">

<br>
<b>largura</b><input type=\"text\" name=\"width\" maxlength=3></input>
<br>
<br>
<b>altura</b><input type=\"text\" name=\"height\" maxlength=3></input>
<br>
<br>
<br><br><br>
<input type=\"submit\" name=\"submit\" value=\"redimensionar\"></input>
</form>";
}
?> 

podemver o funcionamentoaqui

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isto e parte do que o teu script devolveu:

w!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ?÷Á4fv„H†UPÌ›†à§ =äiõ󷉼F5Üj–÷̪–JÅ—¯Ê²G&L[,rN+kÃÿµ*XìõØZò€]—dè8çѸ® Ï-[{ ZèW=µÝcFw`ª£$“€x—Œ¾">§©Å§žºE¼›ÊG)…îˆèK•\ãîpq·¦ø•â§ƒÁö+o żš¤~k$‹²DŒÅá‰er1¸WMz“oÀŽrÛpw-œí= ÇLÀö¬Òt­ñÄ[5²ê×631\újFñÿ}q]'†þ*kºe´_kP´ ~K‡&QØĘÏ\X71^\ÖÒ‹Å·(é#B³n œŽµÓT@Š>UÚ­E1ñá߉:¾&˜ØÞ1Ûä\¡›*¿+ô9fÀ1Çݮ¾StV9è}GŸà+[Dñv½á¯—N¼&ÿ.ÒѼ~î~_™²J•'Œž*\;çÒÔWœh¿ô‹Í‘j–òØÌsºEýäc¦3˜ž›HÍz ­åµõ²\Ú\Eqò’ÄáÕ¹Çpy¥«šŠ(¤EP™øƒáDr‰åðõÄV¦fÜö—YàeÑà<Ô´W¤ø3YoYi:¶—"[‰L’Kåï¢q(Ý°a¼nâ½öŠÕV’Vø¿{ÇŒ$‰ im.y'/Çn’ÈûW–Kr¸AûàÄ‹…|;c¾G±¯HøÇkö/O)E¶CÀóòàöú{ö¯0’5A(ÁÇ“Û°ÇçùÔ­€ÔÑÒIîMÄÏæ“b³ Îz9ÀÏ^yÕ²j¶›Ùì#SÏóœg¿×ÛdšÑl!†£cO'Š1°0@ÿ8ÿV4ÍcSÐç2éwÓZ³0vØä#q‡F=#ª±¦´šêšÆ‰aÈ׬Zr‹Äö¸ø9BBä’rAQœ½ëÕt}kO×´õ¾Ó.DöìÌ»‚• ƒ‚ øŽA¡ò>¡!X•#qþUÖø+âÇ…DŠ‚9-&”É-£äp@1È2s…A‡qÔu¬ÜGséª+#Ã~!²ñ>¥`å£cµÕÀ ŽªÀƒÈîzŒ9¢ f½Q@o¼7>µoo=¤6òKå‘'™dB>ëlùÀÎW=0T‚HùßÅúQѵù#}6{K&Ž7•‘‘Šáe8åÃàqÆ8+ëªçüCá;]|™$¤¢'Œ+.øÎA•à‚2yFRzF1Iôò½¶³p£%„ê:‰8aø÷ükV BÚäí±ÿ¹'ÿ¯øWqâƒíÇ™eÖ²³’@±-Áù@1áGBŒÞ^c¨hZÆ–‘´ÖÞ}¬«º)¡ãp$«/Œ°È÷5i¸MDƲ"¿…,âxo+nŽëæp¥rG\|ÁFAç°Ð’àÃ'•u[É’ÿºØ$­ÐŒ©ªNâ°òi„Ó‰Èã½E#„FsÑA8¡±—›¥˜NÅ'ŒŸAêyéQÄј@É9Èà¯ÁõûߥV ;ïln'¯ùëV6y7åA •!ÁìFAuüjF{— fßMðÜN¤³ß;’ý3ŒJ*÷Á‹æðmÔ³[¾Ö¿s8ÆäÙÏç‘õŠ‡kŽçªQE# (¢€V.§á}7Ryd1ùJA•âUÄ¿wp e t#­Ey®Ë,“C¦F²ym±§'å ‚p½Ž0:3ÆsTL¾ 7R·[G©ÌÍ:ó´€½‡ñwúeÚÀyÿŠþ,îa‹æ(Yæ³Fl¾’b%Ÿim¼ƒ+œã y~­à½kFËÄ¢òÔÈc

Isto aconteceu tanto em 10x10 como em 100x100

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso é porque lhe falta um header("Content-Type: image/jpeg"); antes do imagejpeg($thumb);

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mete o header() que eu disse antes do imagejpeg() e vê se não funciona em todo o lado. :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora