Gå til innhold

Bildeopplasting


Anbefalte innlegg

Videoannonse
Annonse
Tap av kvalitet vil altid det bli.

 

Når man minsker str(px) på et bilde vil jo enklte detaljer bli mindre synlig

 

Men sikkert ikke det du tenkte på da :D

Nei, jeg mente at kvaliteten ble uklar (som om du setter kvaliteten på et jpg-bilde på 20%). Gjør ikke noe at små detaljer i et stort bilde går tapt :D

Lenke til kommentar
GIF: Only supported in GD versions older than gd-1.6. Read-only GIF support is available with PHP 4.3.0 and the bundled GD-library.

Dvs. du kan lese gif bilder og endre de - men da må de lagres som f.eks. jpg. Du kan i utgangspunktet ikke lagre et bilde som en gif fil.

 

Ta en kikk på følgende linker

http://no.php.net/manual/en/features.file-upload.php

http://no.php.net/manual/en/ref.image.php

http://no.php.net/manual/en/function.imagecopyresampled.php

 

Det tar ikke lang tid å sette sammen et eget script :thumbs:

Lenke til kommentar
Dvs. du kan lese gif bilder og endre de - men da må de lagres som f.eks. jpg. Du kan i utgangspunktet ikke lagre et bilde som en gif fil.

Nei, det kan lagres som gif fil. Det jeg mener er at uploaderen skal kunne endre størrelsen på jpg og gif bilder, men den kan lagre den i det formatet den er i :)

Endret av simenss
Lenke til kommentar
An ANSI C library for the dynamic creation of images. GD creates PNG and JPEG images, among other formats. GD does not create GIF images.

 

Many have asked whether gd will support reading and creating GIF files again, since we have passed June 20th, 2003, when the well-known Unisys LZW patent expired in the US. Although this patent has expired in the United States, this patent does not expire for another year in the rest of the world. Since I have no way of limiting distribution of GIF-reading-and-creating code to US users only that is guaranteed to please somebody else's lawyer, I have opted to follow the same policy that the ImageMagick authors are following: GIF support will not reappear in gd until the patent expires world-wide on July 7th, 2004. I realize this situation is frustrating for many; please direct your anger and complaints toward the questionable patent system that allows the patenting of such straightforward algorithms in the first place. Thank you!

- fra Boutell

 

Det er mulig å installere 3. parts scripts som gjør det mulig å lagre i GIF, men da må du kjøpe en lisens.

Lenke til kommentar
NB: du kan laste opp bilder i GIF format, det er når du skal endre bildet at du ikke kan lagre det som GIF.

 

Du kan likevel åpne et GIF bilde, endre størrelsen på det, og lagre det som PNG eller JPG (JPEG).

Ja, det er samme om den lagrer det i GIF eller JPG, men den skal kunne støtte GIF-bilder, slik at også GIF-bilder kan bli lastet opp (samme om de blir gjort om til JPG)... Men noen som vet om noen ferdige script? Er ikke verdens beste i PHP :roll:

Lenke til kommentar
Ta en kikk på hotscripts.com hvis du vil ha et ferdig script.

 

Hvis du bestemmer deg for å bygge ditt eget skal vi hjelpe deg!

Jeg har gått gjennom alle PHP-script med bildemanipulering på hotscripts.com og jeg har søkt gjennom google.com men finner ikke noe som gjør akkurat det jeg vil. Så hvis det er noen som gidder å hjelpe meg med et script så hadde det vært fint! Jeg skal gjøre så godt jeg kan og! Kan sikkert lære mye av dette :D

Lenke til kommentar
Jeg har gått gjennom alle PHP-script med bildemanipulering på hotscripts.com og jeg har søkt gjennom google.com men finner ikke noe som gjør akkurat det jeg vil. Så hvis det er noen som gidder å hjelpe meg med et script så hadde det vært fint! Jeg skal gjøre så godt jeg kan og! Kan sikkert lære mye av dette :D

Så du lurer med andre ord på om det er noen som vil bygge scriptet for deg?

Jeg kan gi deg noen tips slik at du lettere kan bygge ditt eget script.

 

Hvordan du laster opp filer finnes det kjempe bra eksempler på i manualen:

http://no2.php.net/manual/en/features.file-upload.php - så den delen henter du bare ut fra manualen.

 

Når du skal endre størrelsen gjør du slik:

1. lager et nytt bilde i den størrelsen du ønsker

2. bruk imagecopyresampled() for å endre størrelse på det andre bildet, og "lime det inn" på det bilde du lagde i punk 1

3. output bildet

Lenke til kommentar
Så du lurer med andre ord på om det er noen som vil bygge scriptet for deg?

Jeg kan gi deg noen tips slik at du lettere kan bygge ditt eget script.

 

Hvordan du laster opp filer finnes det kjempe bra eksempler på i manualen:

http://no2.php.net/manual/en/features.file-upload.php - så den delen henter du bare ut fra manualen.

 

Når du skal endre størrelsen gjør du slik:

1. lager et nytt bilde i den størrelsen du ønsker

2. bruk imagecopyresampled() for å endre størrelse på det andre bildet, og "lime det inn" på det bilde du lagde i punk 1

3. output bildet

Skal prøve ;)

Lenke til kommentar

Fant nettopp et script som var perfekt for meg! Gjore bare noen små justeringer. Men går det ann å få dette scriptet til å lagre bildet som en egen fil i en bestemt mappe?

 

resize.php:

<?php

function sizeImage($image, $w, $h, $proportional) {
   if (!$attr = getimagesize($image)) {
       trigger_error("GD: Image does not exist.  Must be gif, jpeg, or png!",E_USER_ERROR);
   }
   
   switch ($attr[2]) {
       case 1:
           $image = imagecreatefromgif($image);
           break;
       case 2:
           $image = imagecreatefromjpeg($image);
           break;
       case 3:
           $image = imagecreatefrompng($image);
           break;
       default:
           trigger_error("GD: Image type wrong.  Must be gif, jpeg, or png!",E_USER_ERROR);
   }
   if ($proportional) {
       if ($attr[0]<$attr[1]){
           $w = $h * ($attr[0]/$attr[1]);
       }
       else{
           $h = $w / ($attr[0]/$attr[1]);
         }   
   }
   $newimage = imagecreatetruecolor($w,$h);
   imagecopyresampled($newimage, $image, 0, 0, 0, 0, $w, $h, $attr[0], $attr[1]);
   imagepng($newimage);
   imagedestroy($image);
   imagedestroy($newimage);
}
$image = $_GET['image']; //image location

$proportional = FALSE; //proportional or not
header("Content-type: image/jpeg"); //so we can use the image right in a tag. <img src="resize.php?image=me.gif">
sizeImage($image, $w, $h, $proportional);
?>

Endret av simenss
Lenke til kommentar

dette er såpass grunnleggende php forståelse (lese en funksjonsdefinisjon fra php.net) at jeg vil be deg se på eksemplene der, user comments, prøve på egenhånd, og heller komme tilbake etter det.

 

det står nemlig veldig klart beskrevet hvordan det gjøres. hvis det fortsatt er uklart, så se på eksemplene der, evt kopier dem.

Lenke til kommentar

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...