Upload von transparente GIFs

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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

    Comment


    • #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
      Last edited by AmicaNoctis; 20-05-2010, 11:28. Reason: 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]

      Comment


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

        Comment

        Working...
        X