Avatar billede dennism Nybegynder
27. januar 2006 - 09:57 Der er 3 kommentarer og
1 løsning

PHP: Resize image

Jeg har lavet denne funktion, som jeg bruger til at resize billeder som bliver uploadet:

function reziseImage($src, $dist, $imageType, $maxWidth, $maxHeight) {
    list($width, $height) = getimagesize($src);

    if ($width>$maxWidth || $height>$maxHeight) {
        $scrRatio = $width/$height;
        $distRatio = $maxWidth/$maxHeight;
        if ($distRatio>$scrRatio) {
            $newHeight = $maxHeight;
            $newWidth = $maxHeight*$scrRatio;
        } else {
            $newHeight = $maxWidth/$scrRatio;
            $newWidth = $maxWidth;
        }
    } else {
        $newWidth=$width;
        $newHeight=$height;
    }

        $thumb = imagecreatetruecolor($newWidth, $newHeight);

        if ($imageType == "jpg") {
            $source = imagecreatefromjpeg($src);
        } elseif ($imageType == "png") {
            $source = imagecreatefrompng($src);
        } elseif ($imageType == "gif") {
            $source = imagecreatefromgif($src);
        }

        $source = imagecreatefromjpeg($src);
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
   
        if ($imageType == "jpg") {
            imagejpeg($thumb, "$dist");
        } elseif ($imageType == "png") {
            imagepng($thumb, "$dist");
        } elseif ($imageType == "gif") {
            imagegif($thumb, "$dist");
        }
}

Jeg uploader nu et billede med følgende dimensioner:
488x332

Funktionen bliver nu kørt med følgende attributter, for at lave et thumbnail:
reziseImage($imageFilename, $imageFilenameThumb, $imageType, 150, 100);

Det givet et thumbnail med følgende dimensioner:
146x100

Problemet er bare, at det thumbnail ser forvrænget ud :(

Nogen der kan hjælpe mig med at løse det problem?

(har desværre ikke flere point)
Avatar billede donslund Nybegynder
27. januar 2006 - 10:29 #1
Ser det ud som der er forkerte proportioner eller meget dårlig billedkvalitet?

Hvis det er kvaliteten er ImageMagick væsentligt bedre.
Avatar billede dennism Nybegynder
27. januar 2006 - 10:48 #2
Det er forkerte proportioner. Resizer jeg det samme billede i photoshop bliver det 147x100, mens mit system vælger 146x100. Den ene pixel kan jo godt ødelægge meget :(

Har du et forslag til hvad der er galt?
Avatar billede dennism Nybegynder
30. januar 2006 - 09:42 #3
Ingen der kan hjælpe her?
Avatar billede dennism Nybegynder
01. februar 2006 - 18:26 #4
.lukker
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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel