Avatar billede klgn Nybegynder
22. marts 2006 - 15:56 Der er 4 kommentarer og
2 løsninger

konverter gif til png med transparens

Hejsa!

Jeg leger med lidt billedeupload og vil i den forbindelse også gerne kunne bruge transparente gif-billeder. Upload scriptet resizer desuden billederne, når de er blevet uploadet. Men der er ikke gif-write support på serveren, hvilket jo gør5 det umuligt at resize gif-billederne.
jeg har har derfor leget med at konvertere dem til png, som jo også understøtter transparens. Jeg kan fint konvertere mit gif-billede til png, men transparensen bliver ikke ført med over:(
Hvilke funktioner skal jeg bruge til dette?

Jeg har pastet scriptet fra den del, hvor jeg leger med gif-billeder og her er billedet bleve uploadet...

    elseif ($_FILES['image']['type']=='image/gif') {
        $new_name = ereg_replace(".gif", ".png", $files);
        if ($imagewidth < $new_width) {
            $new_width = $imagewidth;
            $new_height = $imageheight;
           
            // Resample
            $image_p = imagecreatetruecolor($new_width, $new_height);
            $image = imagecreatefromgif($billede_dir . $files);
            imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $imagewidth, $imageheight);
           
            // Output
            imagepng($image_p, $billede_dir .  $files, 100);
            rename($billede_dir . $files, $billede_dir . $new_name);
        }

Ja, det er en høkermetode, jeg har brugt, men den virker bortset fra transparensen:)
Forlag til at ændre koden modtages også gerne:)
Avatar billede coderdk Praktikant
22. marts 2006 - 17:31 #1
http://dk.php.net/imagealphablending
http://dk.php.net/imagesavealpha

Prøv imagecreatetruecolor at tilføje:

imagealphablending($image_p, true);
imagesavealpha($image_p, true);
Avatar billede domaz.dk Novice
22. marts 2006 - 18:20 #2
coderdk: er du sikker på at ImageAlphaBlending ikke skal være false?

det var ihvertfald hva jeg fik ud af det da jeg lige læste nogle af kommentarerne..
Avatar billede coderdk Praktikant
22. marts 2006 - 18:24 #3
Ja det har du da ret i, der *er* jo alpha info i GIF-billedet :)
Avatar billede klgn Nybegynder
22. marts 2006 - 19:05 #4
I er nogle stjerner:)
Det virker med false i imagealphablending...
Jeg takker, smid svar og der ryger points i Jeres retninger;)
Avatar billede domaz.dk Novice
22. marts 2006 - 19:10 #5
/s - det var da godt... så ved jeg også hvordan jeg kan løse det i fremtiden... (:
Avatar billede coderdk Praktikant
22. marts 2006 - 21:39 #6
:)
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