Upload von transparente GIFs

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Upload von transparente GIFs

    Hallo
    Ich nutze folgendes Script zum Upload von Bildern (GIFs oder JPG). Wenn ich ein transparentes GIF hochlade, wird der Hintergrund scharz. Was kann ich da tun? Habe schon mit der ausgeklammerten Erweiterung rumprobiert. Leider ohne Erfolg.
    PHP-Code:
    list($width$height) = getimagesize($file) ; 
        
                    
    $modwidth 150
        
                    
    $diff $width $modwidth;
        
                    
    $modheight $height $diff
                    
    $tn imagecreatetruecolor($modwidth$modheight) ; 
                    
    #imagealphablending( $im, false);
    #$col = imagecolorallocate( $tn, 0, 0, 0, 127 );
    #imagefilledrectangle( $tn, 0, 0, $modwidth, $height, $col );
    #imagealphablending( $tn, true );

                    
                    
                    #Oben genannte Funktion wird aufgerufen GIF ODER JPG wird bestimmt
                      
    $filetype=mime_content_type($file);
                    
                    
    ## GIF ODER JPG
                    
    if ($filetype=="image/gif")
                    {
                        
    $image imagecreatefromgif($file) ; 
                    }
                    else if ((
    $filetype=="image/jpg") OR ($filetype=="image/pjpeg") OR ($filetype=="image/jpeg"))
                    {
                        
    $image imagecreatefromjpeg($file) ; 
                    }
                    
                    
    imagecopyresampled($tn$image0000$modwidth$modheight$width$height) ; 
                    
                    
    ## GIF ODER JPG
                    
    if ($filetype=="image/gif")
                    {
                        
    imagegif($tn$save100) ;  
                    }
                    else if ((
    $filetype=="image/jpg") OR ($filetype=="image/pjpeg") OR ($filetype=="image/jpeg"))
                    {
                        
    imagejpeg($tn$save100) ; 
                    } 
    Könnt Ihr mir helfen?
    Danke!!

  • #2
    habe von Image kaum Ahnung, versuch aber mit
    imagealphablending($tn,true) Alpha einzuschalten.
    Slava
    bituniverse.com

    Kommentar


    • #3
      Hallo,

      indizierte Grafiken zu skalieren ist eine ganz schlechte Idee, weil die Palette immer neu generiert werden muss und der Qualitätsverlust viel zu stark ist. Tranzparenzen muss man ggf. komplett neu auspixeln, weil in der neuen Palette die Pixel ganz anders gruppiert sind und daher meist mehr transparent werden würde als gewollt.

      Was spräche denn gegen PNG? Nichts, oder?

      Gruß,

      Amica
      Zuletzt geändert von AmicaNoctis; 20.05.2010, 12:28. Grund: Tippfehler gefunden
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Kommentar


      • #4
        PNG? Nichts - was kann ich da tun. Bedingung ist, dass ich das Bild transparent hochladen muss.
        Danke!

        Kommentar

        Lädt...
        X