Farben auslesen aus Grafik

saila

Erfahrenes Mitglied
Hi,

ich suche eine Möglichkeit aus einer Grafik die verwendeten Farben heruaszuelsen. Da es nicht mit PHP geht, die Frage an euch, ob jemand Infos hierüber hat.
 
Wenn z.B. ein Graustufenbild (jpeg oder gif oder png) vorliegt, mit JavaScript oder Java die Grautöne auslesen meine ich. Da es mit php nicht geht.....
 
Es sollte auch einfacher gehen:
PHP:
function imagecolorpalette( &$image, $dither=true, $ncolors=256 )
{
	if( !($n = imagecolorstotal($image)) ) {
		$n = $ncolors;
		imagetruecolortopalette($image, $dither, $n);
	}
	if( is_numeric($n) ) {
		$n = min($ncolors, $n);
	}
	$colors = array();
	for( $i=0; $i<$n; $i++ ) {
		$colors[] = imagecolorsforindex($image, $i);
	}
	return $colors;
}
Hab’s leider noch nicht ausprobieren können.
 
Hi Gumbo,

ich bekomm aus dem Script Fehlermeldungen:
imagecolorstotal(): supplied argument is not a valid Image resource
imagecolorsforindex(): supplied argument is not a valid Image resource

Bildformate in jgp, gif, png versucht.
 
Du musst eine Ressource übergeben, beispielsweise:
PHP:
$im = imagecreatefrompng('foobar');
$palette = imagecolorpalette($im);
imagedestroy($im);
 
Danke Gumbo - hab es nicht mit der Grafikfunktion von php :)

Also die Ausgabe sieht so aus:
http://www.worldstocks.de/software/bgame/jimage.php

Erweiterte Frage:
Kann ich nun in dem png-Bild auf dem jeweiligen Farbwert (Bsp.: Blau) bzw. ausschl. auf Blau - Punkte erzeugen in einem Abstand von 10*10 (also 10 pix nach rechts und 10pix nach oben bzw. unten)?

Dient einer Map-Generierung.

Edit: hat sich erledigt.
 
Zuletzt bearbeitet:
Zurück