mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 19.04.2024 16:12 Benutzername: Passwort: Auto-Login

Thema: [Frage] Transparente Gifs und Pngs mit GD - Wie? vom 13.09.2005


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [Frage] Transparente Gifs und Pngs mit GD - Wie?
Autor Nachricht
mildi
Threadersteller

Dabei seit: 22.12.2004
Ort: -
Alter: -
Geschlecht: -
Verfasst Di 13.09.2005 15:05
Titel

[Frage] Transparente Gifs und Pngs mit GD - Wie?

Antworten mit Zitat Zum Seitenanfang

Hallo zusammen,

*.jpgs lassen sich so ganz zufriedenstellend "resaplen":

Code:
function resample ($file, $width, $qualitaet)
{



       $src_img = imagecreatefromJPEG("../assets/bildspeicher/".$file);

if ($width!=x) // FALLS DIE GROESSE NICHT VERAENDERT WERDEN SOLL WIRD "x" UEBERGEBEN.
{
   $new_w = $width;  // breite auf $width setzen
   $new_h = imagesy($src_img)*$width/imagesx($src_img);
}

else
{
   $new_w = imagesx($src_img);
   $new_h = imagesy($src_img);
}

       $compression = $qualitaet;  // 100 ist beste
       $dst_img = imagecreatetruecolor($new_w,$new_h);

       imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $new_w, $new_h, imagesx($src_img), imagesy($src_img));

       imagejpeg($dst_img, "../assets/bildspeicher/resamples/".$file, $compression);

       imagedestroy($src_img);    // Speicher frei machen
       imagedestroy($dst_img);


}


...wie lassen sich da jetzt noch am geschicktesten *.gif bzw *.png

mit (möglicherweise tranzparenten Bereichen) umwandeln? * Keine Ahnung... *

BITTE SEI SO NETT, UND TIPP MIR DAS DA EBEN REIN!

...ich werde es dann testen, und hier wieder veröffentlichen, da (glaub ich) mehrere so ein Script gbrauchen können!

DANKE *Thumbs up!*


Zuletzt bearbeitet von mildi am Di 13.09.2005 21:05, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
mildi
Threadersteller

Dabei seit: 22.12.2004
Ort: -
Alter: -
Geschlecht: -
Verfasst Sa 24.09.2005 18:57
Titel

Antworten mit Zitat Zum Seitenanfang

So, das "Hauptscript" hab ich jetzt mal gebastelt (siehe unten).

Allerdings bin ich immer noch ratlos wie die tranzparenten Bereiche von

gifs (und pngs) erhalten werden können.

...experimentiere gerade mit:

- ImageColorTransparent()

in Verbindung mit:

- ImageColorAllocate()

und:

- imagealphablending()


Kennt jemand den richtigen Syntax???


Code:

function resample ($file, $width, $qualitaet)
{

// Dateinamenerweiterung ermitteln:

$dateinamenerweiterung=strrchr($file,".");

if ($dateinamenerweiterung == ".jpg")
{
   $src_img = imagecreatefromJPEG("../assets/bildspeicher/".$file);
}

if ($dateinamenerweiterung == ".gif")
{
   $src_img = imagecreatefromGIF("../assets/bildspeicher/".$file);
}

if ($dateinamenerweiterung == ".png")
{
   $src_img = imagecreatefromPNG("../assets/bildspeicher/".$file);
}

   if ($width!=x) // FALLS DIE GROESSE NICHT VERAENDERT WERDEN SOLL WIRD "x" UEBERGEBEN.
   {
      $new_w = $width;  // breite auf $width setzen
      $new_h = imagesy($src_img)*$width/imagesx($src_img);
   }

   else
   {
      $new_w = imagesx($src_img);
      $new_h = imagesy($src_img);
   }

   $compression = $qualitaet;  // 100 ist beste

   $dst_img = imagecreatetruecolor($new_w,$new_h);

   if ($dateinamenerweiterung == ".gif")
   {
      ????????????????????
   }

   imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $new_w, $new_h, imagesx($src_img), imagesy($src_img));

if ($dateinamenerweiterung == ".jpg")
{
   imagejpeg($dst_img, "../assets/bildspeicher/resamples/".$file, $compression);
}

if ($dateinamenerweiterung == ".gif")
{
   imagegif($dst_img, "../assets/bildspeicher/resamples/".$file, $compression);
}

if ($dateinamenerweiterung == ".npg")
{
   imagepng($dst_img, "../assets/bildspeicher/resamples/".$file, $compression);
}

imagedestroy($src_img);    // Speicher frei machen
imagedestroy($dst_img);

}


DANKE!
  View user's profile Private Nachricht senden
Anzeige
Anzeige
 
Ähnliche Themen keine Transparenz von GIFs und PNGs beim Drucken...
Transparente 8 Bit PNGs
Transparente PNGs
ie6 z-index und transparente pngs...
Transparente pngs überlappen lassen?
transparente gifs mit gimp
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.