Avatar billede trophymanager Nybegynder
04. juli 2005 - 20:47 Der er 8 kommentarer og
1 løsning

php blob.. hvordan kan jeg skalere et billede?

hej drengene.

Jeg har en blob i en database indeholdende et billede. Nu vil jeg imidlertidig gerne sikre mig at når billedet bliver vidst er det for eksempel højest 200 bredt og 150 højt.

Hvordan gøres dette hvis jeg vil sikre mig at billede ikke kommer ud af dets propertioner?
Avatar billede jakobdo Ekspert
04. juli 2005 - 20:52 #1
Avatar billede Slater Ekspert
04. juli 2005 - 21:01 #2
Men det eksempel bruger funktionen "imagecopyresampled".
Den kræver GDlib 2.0.1 eller senere.

Funktionen "imagecopyresized" kræver, så vidt jeg ved, ingen GDlib, men bare almindelig PHP 4.0 eller senere. Hvis du ikke har GDlib, kan du udskifte førnævnte funktion med denne. Men resultatet er uden anti-aliasing, og altså ikke helt så pænt.
Avatar billede coderdk Praktikant
04. juli 2005 - 22:51 #3
viperine, Hvis man har en nogenlunde up-to-date installation af PHP, så har man dén GD-version - Og imagecopyresized kræver skam GD! Se http://dk2.php.net/image :)
Avatar billede Slater Ekspert
04. juli 2005 - 23:48 #4
coderdk -> Kunne ikke umiddelbart se hvor det står der, men jeg har den downloadede .chm version af PHP manualen, og i den står der at resized-funktionen kun kræver PHP, men resampled-funktionen kræver GDlib 2.0.1 - om det så følger med en senere version af PHP, og i så fald hvilken, ved jeg ikke.
Avatar billede trophymanager Nybegynder
05. juli 2005 - 22:08 #5
Mand, det virker lidt sort. Hvordan får jeg det til at lave den resize inden jeg laver følgende:

        move_uploaded_file($_FILES['imagefile']['tmp_name'],"latest.img");
        $instr = fopen("latest.img","rb");
        $image = addslashes(fread($instr,filesize("latest.img")));
   
        if (strlen($instr) < 149000) {
                mysql_query ("UPDATE clubs SET billede='$image' where id='$id'");
        } else {
                $errmsg = "Too large!";
        }
Avatar billede jakobdo Ekspert
05. juli 2005 - 22:14 #6
Jeg vil mene du skal gøre det inden du kalder move_uploaded_file...
Altså kalde resize($_FILES['imagefile']['tmp_name'],"latest.img",100,100);
Måske du så endda kan fjerne linien: move_uploaded_file($_FILES['imagefile']['tmp_name'],"latest.img");

(den er jeg dog ikke sikker på, prøv dig frem)
Avatar billede trophymanager Nybegynder
05. juli 2005 - 22:32 #7
det virker sq! Skulle fjerne move_uploaded_file før det virkede.. smid at svar jabob og tak for kommentarerne til coder og viper
Avatar billede jakobdo Ekspert
06. juli 2005 - 08:05 #8
Svar.
Avatar billede jakobdo Ekspert
07. juli 2005 - 08:27 #9
Takker for point!
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