Avatar billede siphon Nybegynder
09. juni 2009 - 13:14 Der er 9 kommentarer og
1 løsning

Resize et billede og overfører ´transperant baggrund

Hej jeg sidder og arbejder på et script som skal resize mine billeder til små thumbnails - problemet er at jeg har nogle thumbnails som skal have transperant baggrund. Jeg har forsøgt mig med meget forskelligt men har endnu ikke fundet en løsning.

Neden for poster jeg scriptet i fuld længde og håber på at nogen kan se en fejl eller nogle mangler :D


#thumpsnails on the fly
    $image_path = $_GET['filename'];
    $image = open_image($image_path);

    if($image === false)
    {
    return false;
    }else{
    $width = imagesx($image);
    $height = imagesy($image);
   
    $width_new = $_GET['width'];
    $height_new = $height * ($width_new / $width);
   
    $image_resized = imagecreatetruecolor($width_new, $height_new);
    imagecolortransparent($image_resized); // make the new temp image all transparent

    imagecopyresampled($image_resized, $image, 0,0,0,0,$width_new,$height_new,$width,$height);

    if(!isset($image_resized)){
   
        $image_resized = $image;
   
    }
    if(isset($_GET['byline']) && $_GET['byline'] === 1)
        {
    $white = imagecolorallocate($image_resized, 255, 255, 255);
    $top = $height_new - 10;
    imagestring($image_resized, 1, 5, $top, "By Line", $white);
    }
    header("Content-Type: image/png");
   
    imagepng($image_resized);
   
    }
Avatar billede repox Seniormester
09. juni 2009 - 13:20 #1
Har du ikke mulighed for at benytte dig af imagemagick eller er det fordi du ikke ved hvordan man bruger det?
Avatar billede siphon Nybegynder
09. juni 2009 - 13:32 #2
repox - Må nok indrømemr at jeg ikke ved hvad det er :S .. Er kun lige begyndt at benytte den del af php der hedder upload og behandling af billeder i går :P...

Jeg tager lige et hurtigt kik på php.net og ser om jeg ikke kan læse mig frem til noget der omkring "imagemagick" :D
Avatar billede repox Seniormester
09. juni 2009 - 13:36 #3
De fleste webhoteller har idag mulighed for at benytte sig af imagemagick. Jeg vil anbefale dig at kigge den vej - både kvalitetsmæssigt, resourcemæssigt og kodemæssigt.
Avatar billede repox Seniormester
09. juni 2009 - 13:42 #4
Og jeg gleme at sige at det ikke er php.net du skal kigge på.
ImageMagick er noget som i princippet ikke har med PHP at gøre.

Et eksempel på brug af ImageMagick i PHP:

<?php

    $orgImage = "sti til det originale billede";
    $thumbImage = "sti til thumbnail";
    $size = "50x50";

    $cmd = "convert ".$orgImage." -resize ".$size." -quality 100 ".$thumbImage;
    exec($cmd);


?>
Avatar billede siphon Nybegynder
09. juni 2009 - 13:43 #5
Nu sidder jeg desværre og skal lave det har på min lokale maskine - og har læst under installation på php.net( http://dk2.php.net/manual/en/imagick.installation.php ) - Er det simpelthen ikke er muligt at finde en installations manual eller fil som kan bruges til noget..

Jeg skulle vel ikke være så heldig at du kender til et sted hvor de har det ?
Avatar billede repox Seniormester
09. juni 2009 - 13:47 #6
http://www.imagemagick.org/ - der har de en windows binary som kan det du skal bruge.
Avatar billede siphon Nybegynder
09. juni 2009 - 13:49 #7
Mange tak - vil jeg begå mig ud i :D.. poster du svar så giver ejg points :D
Avatar billede repox Seniormester
09. juni 2009 - 13:51 #8
Værsgo'
Avatar billede siphon Nybegynder
09. juni 2009 - 13:56 #9
okay lige hurtigt hvordan installer/opsætter jeg det jeg har hentet... der et bare mærkelige filtyper som windows ikke genkender :S
Avatar billede repox Seniormester
09. juni 2009 - 16:07 #10
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