Achim: Transparente GIFs

Hallo!

Wenn ich mit $image = imagecreatefromgif... ein GIF-Bild aus einer Datei erzeuge, dann Breite und Höhe ändere und mithilfe von imagecopyresized ein in der Größe verändertes Bild erstelle, das ich mit imagegif speichere, geht bei transparenten GIFs die Transparenz verloren.

Kann man da was ändern? Man kann ja irgendwie eine Farbe als transparent bestimmen, aber kann man aus dem Bild auch auslesen, welche Farbe transparent war?

Danke für Antworten.

Achim

  1. Hallo Achim,

    Kann man da was ändern?

    Ich denke,

    http://www.php.net/manual/de/function.imagepalettecopy.php

    ist, was du suchst.

    Gruesse,
     CK

    1. Hallo!

      Danke für Deine Antwort. Aber irgendwie wird díe Palette nicht richtig übertragen. Hab den Palettenkopierbefehl so eingebaut, aber was transparent war, wird hinterher schwarz...

      $image = imagecreatefromgif($file);
      $newimage = imagecreate($width,$height);
      imagecopyresized($newimage, $image, ...);
      imagepalettecopy ($newimage, $image);
      imagegif($newimage,"$newfilename");

      Hab ich einen Denkfehler oder geht's einfach nicht?
      Das $image wird aus einer Datei erzeugt und das imagegif in eine andere Datei geschrieben...

      Achim