Avatar billede gizp Nybegynder
30. juli 2005 - 16:05 Der er 7 kommentarer og
1 løsning

Resize af billede

Hej

Vil høre om nogen har et script til at gøre uploadede billeder mindre, altså width og height.

Det skal fungerer sådan at hvis et billede er breddere end 400px, skal bredden ændres til 400px og højden til den tilsvarende formindskelse.

Søger faktisk kun lige de koder der skal bruges til at gøre billedet mindre. Tak :) Hehe

/gizp
Avatar billede leif Seniormester
30. juli 2005 - 16:37 #1
<?
    $imgReal = @imagecreatefromjpeg($_GET['pic']);
    $x = ImagesX($imgReal);
    $y = ImagesY($imgReal);
    $newX = 100;
    $newY = $newX * $y / $x;
    $img = ImageCreateTrueColor($newX, $newY);
    ImageCopyResampled($img, $imgReal, 0, 0, 0, 0, $newX, $newY, $x, $y);
    //header('Content-Type: image/jpeg');
    list($imgDIR, $imgName) = explode("/", $_GET['pic']);
    ImageJPEG($img,"thumb/$imgName");
    header('Content-Type: image/jpeg');
    ImageJPEG($img);
?>

Bruger jeg til at lave thumbnails med !
Avatar billede leif Seniormester
30. juli 2005 - 16:40 #2
Det kunne vel være noget ala:
<?
$imgReal = @imagecreatefromjpeg($_GET['pic']);
$x = ImagesX($imgReal);
$y = ImagesY($imgReal);

if($x > "400")
{
$imgReal = @imagecreatefromjpeg($_GET['pic']);
$newX = 400;
$newY = $newX * $y / $x;
$img = ImageCreateTrueColor($newX, $newY);
ImageCopyResampled($img, $imgReal, 0, 0, 0, 0, $newX, $newY, $x, $y);
list($imgDIR, $imgName) = explode("/", $_GET['pic']);
ImageJPEG($img,"$imgName");
header('Content-Type: image/jpeg');
ImageJPEG($img);
}
?>
Avatar billede gizp Nybegynder
30. juli 2005 - 20:05 #3
Okay, øh. Skal billedet så være uploadet?

Og $_GET['pic'] skal indeholde hvad ? Hehe.

Kan godt være jeg skal have en yderligere forklaring, hehe. Havde ikke lige regnet med at billedebehandling i PHP var så svært ;D
Avatar billede leif Seniormester
30. juli 2005 - 20:18 #4
$_GET['pic'] henter en variabel fra adresse linien på et billede som ligger på serveren og resizer det ! Jeg regnede med du selv kunne arbejde videre med det og bygge det ind i din upload funktion hvis du ønsker det skal ske der igennem !
Avatar billede gizp Nybegynder
31. juli 2005 - 19:38 #5
Nu virker det, nogengange :P Hehe
Når jeg selv uploader et billede, og det er større end de 400px. Så gør scriptet billedet mindre, men når en af mine kammerater uploader et billede på 1600x1400 så bliver det ikke mindre.

Skyldes dette at det skal være en bestemt form for JPEG billede, eller hvad kan grunden være?

Du må også godt ligge et svar :)
Avatar billede leif Seniormester
31. juli 2005 - 20:05 #6
Hvis det er et JPG billede han uploader skulle der ikke være noget i vejen med, nu bruger jeg kun JPG filer på mit billedgalleri, men har uploadet billeder som var over 1000*xxx som den fint gjorde mindre !
Avatar billede leif Seniormester
31. juli 2005 - 20:05 #7
Hvis det er OK så vil jeg da gerne !
Avatar billede gizp Nybegynder
01. august 2005 - 11:14 #8
Jeg tror problemet er størrelsen :/ Hvis jeg uploader et billede på over 2000x1800 pixels, så får jeg en: "Zero sized" fejl.

Så løsningen må jo være at jeg sætte en grænse for hvor store billederne må være, hehe.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester