PHP erbjuder en funktion för att få bredd och höjd på bilden . Med denna information och några enkla matematik , är det möjligt att ändra storlek en bild för visning ändamål utan användning av ett grafiskt bibliotek . Om du permanent vill ändra storlek en bild som du måste använda ett grafiskt bibliotek . PHP erbjuder funktioner för att använda GD grafik bibliotek för att manipulera bilder . Instruktioner
1
Få storleken på en bildfil med hjälp av " getimagesize " -funktionen i PHP . Fånga returvärdet från funktionen och extrahera bildens bredd och höjd . Skriv till exempel : ?
< Php
define ( "width " , 0 ) ;
define ( "höjd" , 1 ) ;
$ image_size = getimagesize ( " myimage.jpg " ) ;
$ width = $ image_size [ bREDD ] ;
$ height = $ image_size [ hÖJD ] ;
2
Set variabler lika med mål- bredd och höjd för att ändra storlek . Till exempel , typ :
$ target_width = 100 ;
$ target_height = 100 ;
3
Beräkna förhållandet mellan nya och gamla bredd och höjd och välj den lägsta av de båda förhållandena . Beräkna den nya bredden och höjden baserat på detta förhållande. Till exempel , typ :
$ ratio_width = $ target_width /$ width ,
$ ratio_height = $ target_height /$ höjd ,
$ ratio = min ( $ ratio_width , $ ratio_height ) ;
$ new_width = intval ( $ ratio * $ bredd ) ,
$ new_height = intval ( $ ratio * $ höjd ) ; ?
>
4
Visa bilden med den nya storleken genom att inkludera " width " och " height " attribut i HTML " IMG " -taggen . Skriv till exempel : ?
< Img src = " myimage.jpg " alt = " Min bild " width = " ? ? < Php echo $ new_width > " height = " < php echo $ new_height ? > " />
5
Ändra storlek på bilden permanent genom att skapa en kopia av bilden som en ny bild och skalning som ny bild med den funktionalitet som tillhandahålls av GD grafik bibliotek . ? Till exempel , typ :
< php
$ image = imagecreatefromjpeg ( " myimage.jpg " ) ;
$ new_image = imagecreatetruecolor ( $ target_width , $ target_height ) ;
imagecopyresampled ( $ new_image , $ image , 0 , 0 , 0 , 0 , $ target_width , $ target_height , $ bredd , $ höjd );
6
Display re- bildstorlek. Till exempel , typ :
imagejpeg ( $ new_image , null , 100 ) ;
> Addera
?