Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/02/2006, 13:12
Avatar de caricatos
caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola donpincho:

Había un mensaje donde puse el código para leer pixeles de una imagen y generar tags para mastrarla... no encontré el mensaje, pero la página es esta: http://www.pepemolina.com/mapas/pixe...l.png&escala=1

El código es el que sigue:

Código:
<html>
<head>
<style type="text/css">
<?php
	function hexa($n)	{
		$digitosHexa = "0123456789ABCDEF";
		return $digitosHexa[$n / 16].$digitosHexa[$n % 16];
	}

	$correcto = true;

	if (isset($_GET["imagen"]))	{

		$imagen = $_GET["imagen"];
		if (isset($_GET["escala"])) $escala = $_GET["escala"];
		else $escala = 1;
		echo "div\t{position: absolute; width: $escala"."px; height: $escala"."px;}\r";
		$img = imagecreatefrompng($imagen);

		if ($img)	{
			$ancho = imagesx($img);
			$alto = imagesy($img);
			for ($i = 0; $i < $ancho; $i ++)

				for ($j = 0; $j < $alto; $j ++)	{
					$pixelxy = imagecolorat($img, $i, $j);
					$rgb = imagecolorsforindex($img, $pixelxy);
					echo "#pixel_".$i."_$j {background-color: #"
						.hexa($rgb["red"])
						.hexa($rgb["green"])
						.hexa($rgb["blue"])
						."; left: ".($i * $escala)
						."; top: ".($j * $escala).";}\r";
				}
		}// fin if ($img)
		else
			$correcto = false;
	}// fin if (isset())
	else
		$correcto = false;

?>
</style>
</head>
<body>
<?php
	if ($correcto)
		for ($i = 0; $i < $ancho; $i ++)
			for ($j = 0; $j < $alto; $j ++)
				echo "<div id='pixel_".$i."_$j' ></div>\r";
?>
</body>
</html>
Se lee con imagecolorat, y luego hay que decodificarlo.

Espero que te sirva.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo