Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V3
Login / opret bruger

Forum \ Programmering og webdesign \ Hjemmeside design
Denne tråd er over 6 måneder gammel

Er du sikker på, at du har noget relevant at tilføje?

Image resize i PHP?

Af Supporter Aspirant Procrastinator | 30-03-2004 14:31 | 780 visninger | 2 svar, hop til seneste
For at resize billeder med PHP har jeg fundet ud af at jeg skal bruge imagecopyresized(), men får man bedre billedkvalitet og større komprimering ved at bruge et script baseret på et andet programmeringssprog? Og i så fald hvilket og hvordan (aner ikke en skid om andre sprog end PHP)?
--
Hurray, people are paying attention to me! http://www.risoftsystems.com[...]
#1
DomaZ.dk
Ultrabruger
30-03-2004 16:37

Rapporter til Admin
her er både en upload og resize.... //billedupload.php <form enctype="multipart/form-data" action="billeduploadok.php" method="post"> <table cellspacing="2" cellpadding="2" border="0"> <tr> <td>Uge:</td> <td><input type="text" name="uge" value="" size="5" maxlength="2"></td> </tr> <tr> <td>Vælg fil:</td> <td><input name="fil" type="file"></td> </tr> <tr> <td>Kommentar:</td> <td><input type="text" name="kommentar" value="" size="40" maxlength="20"></td> </tr> <tr> <td></td> <td><input type="submit" value="Send File"> </td> </tr> </table> </form> //billeduploadok.php <? //her ligger mine db oplysninger i require("config.inc.php"); //opretter forbindelse sql_kontakt(); //Her skal filen flyttes fra $src = $_FILES['fil']['tmp_name']; //Hvilken type fil arbejder vi med? $ext = strtolower(end(explode(".", $_FILES['fil']['name']))); //laver lige et par variabler :-) $kommentar = $kommentar; $uge = $uge; $tid = time(); //Her giver vi billedet et andet navn, så der ikke kommer to ens navne… $nytNavn = "uploadet-" . $tid . "." . $ext; //Her er vores destination for det store billede $dst = "../upload/" . $nytNavn; //her uploades det store billede: copy($src, $dst); //billed-funktioner: $image = $dst; //hvis billedet eksisterer if(file_exists($image)) { //billedet eksisterer $foto = 1; //find størrelsen $imgsize = getimagesize($image); //hvis bredden er mere end 200px if($imgsize[0] > 200) { //sæt det nye billedes bredde til 150, //og regn højden ud så propertionerne passer $width = 150; $height = $imgsize[1] / ($imgsize[0] / 150); //lav et nyt, blankt billede $dst_img=imagecreatetruecolor($width,$height); //åbn kildebilledet $src_img=ImageCreateFromJpeg("$image"); //kopiér og resize kildebilledet over i det nye billede ImageCopyResampled($dst_img,$src_img,0,0,0,0,$width,$height,ImageSX($src_img),ImageSY($src_img)); //lav output til mappen /tmp/ ImageJpeg($dst_img, "../upload/thumbnail/" . $nytNavn); //hvis bredden ikke er over 200px } else { //åbn kildebilledet og lav output $src_img=ImageCreateFromJpeg("$image"); ImageJpeg($src_img, $dst); }; //sæt url'en til billedet $imgurl = "../upload/thumbnail/" . $nytNavn; //sletter det originale billed delete("$image"); //Her ligges oplysningerne ind databasen – huske at connecte til den! $query = "INSERT INTO billeder (billede, uge, kommentar, thumbnail) VALUES ('$dst','$uge','$kommentar','$imgurl')"; mysql_query($query); } else { //foto findes ikke $grund = "Fejl ved upload"; }; ?>
--
- http://DomaZ.dk[...] <<<- Web-design - Nu ver. 3.5!!! Med upload!!! - mailto:[email protected] <<<- Mail... - [email protected] <<<- MSN mail...
#2
Demos
Mega Supporter
30-03-2004 16:44

Rapporter til Admin
#0: Hvis du har adgang til GDLib 2.x, så brug imagecopyresampled() i stedet for imagecopyresized - det giver bedre billedkvalitet på det resizeded billede. Du kan se forskellen her: http://linux.control.dk[...]
--
This post is shareware. Please register to fully understand it.

Opret svar til indlægget: Image resize i PHP?

Grundet øget spam aktivitet fra gæstebrugere, er det desværre ikke længere muligt, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning


ANNONCE