ProgramacionWeb - Ayuda al webmaster
No has iniciado sesión
Conectar al sistema | Registrar usuario
Cursos Cuestionarios Curso de PHP Capítulo
 
4 votos
Uso del color con GD
 
 
La utilización de colores en GD es algo mas compleja que en HTML aunque ambos utilizan el modelo RGB.

ArribaTabla de contenido

ArribaCrear un color

Para usar un determinado color con GD en PHP, primero tenemos que reservar ese color en la imagen. Para reservarlo usaremos la funcion imagecolorallocate y almacenaremos su valor de retorno en una variable para pasarsela después como color a las funciones de dibujo, coloreado...

Nota:
El primer color creado con imagecolorallocate será utilizado como color de fondo de la imagen.

Los parametros que pasaremos a la funcion serán la variable del objeto image y los valores de la intensidad en 24 bits ( de 0 a 255 ) de los colores rojo, verde y azul en este orden, veamos un ejemplo:
 
000 
001 
002 
003 
<?php 
 $color 
imagecolorallocate($im25500)
 
// 100% rojo, 0% verde, 0% azul 
?>
 

ArribaObtencion de un color de la imagen

Otra opción para crear un color consiste en obtener el color de un punto determinado de la imagen usando imagecolorat con el objeto imagen y las coordenadas del punto:
 
000 
001 
002 
003 
<?php 
$imagen 
ImageCreateFromPng("manzana.png")
$color ImageColorAt($imagen100200)// x: 100, y: 200 
?>
 

ArribaUtilización del color

Una vez creado el color con cualquier de los dos métodos anteriores, y almacenado su valor ( variable imagen en los ejemplos ), podemos utilizarlo en las funciones que permiten colores pasando la variable, vamos a seguir los ejemplos anteriores:
 
000 
001 
002 
003 
<?php 
imagefill 
( $imagen11$color )
// Usamos el cubo de pintura con el color creado en x=1 y=1 
?>
 
 
Anterior y siguiente
Creación de una...
 
Comentarios
Este artículo no ha sido comentado hasta el momento
 
Resolver dudas
Si tienes problemas o dudas con el contenido del artículo no dudes a preguntar en los foros de PHP de Programación Web indicando el artículo al que te refieres.