PHP indeholder en funktion til at få bredde og højde på et billede. Med denne information og nogle enkle matematik , er det muligt at ændre størrelse et billede til visning uden brug af en grafisk bibliotek . Hvis du ønsker at permanent re- size et billede, du nødt til at bruge et grafisk bibliotek . PHP indeholder funktioner til at bruge GD grafiske bibliotek til at manipulere billeder. Instruktioner
1
Få størrelsen på en billedfil ved hjælp af " getimagesize "-funktionen i PHP. Fang returværdi fra funktion og udtrække billedets bredde og højde . Skriv f.eks : ?
< Php
define ( " bredden" , 0) ;
define ( "height ", 1 ),
< p > $ image_size = getimagesize ( " myimage.jpg ")
$ width = $ image_size [ bREDDE ]
$ højde = $ image_size [ HEIGHT ]
2
Set variabler lig til målet bredde og højde for resizing . Skriv f.eks : Hej
$ target_width = 100;
$ target_height = 100;
3
Beregn forholdet mellem nye til gamle bredde og højde og vælg det laveste af de to nøgletal. Beregn ny bredde og højde baseret på dette forhold . Skriv f.eks : Hej
$ ratio_width = $ target_width /$ bredde
$ ratio_height = $ target_height /$ højde ,
$ ratio = min ( $ ratio_width , $ ratio_height )
$ new_width = intval ( $ forholdet * $ bredde ),
$ new_height = intval ( $ forholdet * $ højde ) ?
> < br >
4
Vis det billede med den nye størrelse ved herunder " bredde " og " højde" attributter i HTML " img " tag . Skriv f.eks : echo
< img src = " myimage.jpg " alt = " My Image " width = " < php echo $ new_width > ? " Height = "< php $? new_height > "/>
5
Re - size billedet permanent ved at oprette en kopi af billedet som et nyt billede og skalering , som nyt billede med funktionaliteten leveres af GD grafiske bibliotek . ? Skriv f.eks : Hej
< php
$ billede = imagecreatefromjpeg ( " myimage.jpg ")
$ new_image = ImageCreateTrueColor ( $ target_width , $ target_height ) ;
imagecopyresampled ( $ new_image , $ billede, 0, 0, 0, 0, $ target_width , $ target_height , $ bredde , $ højde ),
6
Vise re- billedstørrelse. Skriv f.eks : Hej
imagejpeg ( $ new_image , null, 100),
>
?