Gå til innhold

resizing av bilder


Anbefalte innlegg

Hei.

 

Jeg har følgende function som jeg har brukt mye lokalt, og er veldig fornøyd med. Nå har jeg imidlertid fått litt problemer med minne når jeg sender et opplastet bilde til denne funksjonen. Får feilmelding om at maks minne på 16M er overskedet. Kan jeg gjøre dette på en annen og bedre måte som bruker mindre minne? Jeg har ikke tilgang til å endre memory_limit.

 

function resizeImage($img,$w,$save)
{
// get image size of img
$x = @getimagesize($img);
// image width
$sw = $x[0];
// image height
$sh = $x[1];
if (isset ($w) AND empty($h)) {
 // autocompute height 
 $h = (100 / ($sw / $w)) * .01;
 $h = @round ($sh * $h);
}
$im = @ImageCreateFromJPEG ($img) or // Read JPEG Image
$im = @ImageCreateFromPNG ($img) or // or PNG Image
$im = @ImageCreateFromGIF ($img) or // or GIF Image
$im = false; // If image is not JPEG, PNG, or GIF
if (!$im) {
 // errors from PHP ImageCreate function
 return "En feil oppsto ved oppretting av bilde.";
} else {
 // Create the resized image destination
 $thumb = @ImageCreateTrueColor ($w, $h);
 // Copy from image source, resize it, and paste to image destination
 @ImageCopyResampled ($thumb, $im, 0, 0, 0, 0, $w, $h, $sw, $sh);
 // Output resized image
 @ImageJPEG($thumb,$save);
}
}

Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...