Der Martin: Farben innerhalb eines Bildes austauschen -> Farbwerte ?

Beitrag lesen

Hi,

ich möchte eine Farbe innerhalb eines Bildes per PHP gegen eine andere Farbe austauschen.
Soweit ich weiß, kann ich dieses (leider) nur Pixel by Pixel indem ich über imagecolorat die Farbe des jeweiligen Pixels auslese und diese dann über imagesetpixel neu setzte.

nein, bei palettenbasierten Bildformaten (GIF oder 8bit-PNG) kannst du auch die Paletteneinträge direkt bearbeiten:
 http://de3.php.net/manual/en/function.imagecolorsforindex.php
 http://de3.php.net/manual/en/function.imagecolorset.php

Jetzt möchten ja aber (lt. der Doku) die Funktionen die Farbwerte in Dezimal haben, mir liegen diese aber ausschließlich in HEX bzw. RGB vor.

Nein. Dezimal oder Hex ist eine Frage der *Darstellung* eines Zahlenwerts, nicht seiner Speicherung oder internen Übergabe.

Ist es korrekt, das ich also jetzt erst das Bild einlesen müsste, dann über imagecolorallocate meine beiden Farben (die zu ersetzende und die neue) bestimme und dann die Ersetzungen starte ?

Die entscheidende Frage ist zunächst mal: Hast du ein palettenbasiertes Bild? Wenn ja, kannst du einfach die Paletteneinträge manipulieren. Wenn nein, wirst du wohl oder übel jedes Pixel einzeln ansprechen müssen.

Ciao,
 Martin

--
Alle Tage sind gleich lang. Aber unterschiedlich breit.
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(