PNG-Bild, Transparentz wird ignoriert

Neral

Mitglied
Hi,

ich habe folgendes Anliegen:
Ich möchte in einer HTML-Tabelle runde Ecken anzeigen lassen. Dazu habe ich in jede Ecke ein PNG-Bild gesetzt. Klappt auch alles super.
Hier so eine Ecke:

main11.png


Ich wollte aber nun diese Ecken dynamisch in verschiedenen Farben darstellen.
Dazu wollte ich mit der GD2 Lib arbeiten und habe folgendes versucht:

PHP:
<?php
$Png = imagecreatefrompng('main11.png');
$imgPng = imagecreate(imagesx($Png),imagesy($Png));
imagealphablending($Png, true);
imagesavealpha($Png, true);
$colorallocate = imagecolorallocate($imgPng, 255,0,255);

header("Content-type: image/png");

imagepng($imgPng);
imagedestroy($imgPng); 

?>

Jetzt wird aber die ganze Fläche gefärbt. Das liegt sicher am imagecreate.
Wie bekomme ich nur die Fläche von der PNG datei gefärbt?

Gruß
 
Ich versteh den Sinn hinter deinem Code leider nicht ganz. Zuerst lädst du die PNG-Datei und änderst das Alphakanalverhalten. Dann erstellst du ein neues Bild, allokierst lediglich eine Farbe und gibst das Bild dann aus. :confused:
 
Ich glaub das ist genau das, was er machen möchte.
Er hat ein Bild als Grundlage und möchte von dieser Grundlage dynmisch auf einen bestimmten Anlass die Farben der Ecken ändern.
Daher wird zuerst das Bild geändert, dann die Farbe geändert und dann das Bild wieder ausgegeben.

Ich bin nicht der Held in PNG's, Alphablending etc, vielleicht liege auch komplett falsch, aber der IE kommt damit doch gar nicht klar oder? Oder besteht das Problem auch im FF?
Gruss
 
Hm.. ja stimmt das imagecreate kann ich weglassen.

Nur wie kann ich das erstellte Bild mit imagecreatefrompng färben?
 
Zurück