Este tutorial es la segunda parte del titulado Manejo de la librería GD básico, este tutorial es cortesía de Sargento, un experto en Librería GD y manejo de imágenes en PHP, así que si necesitan contratar a alguien en esta área no duden que con él estarán de maravilla ;)
Coordenadas de la Imagen
Las coordenadas dentro de una imagen siempre serán positivas y el pixel (0,0) corresponde a la esquina superior izquierda. En una imagen de 400 x 120 pixeles, el pixel de la esquina inferior derecha corresponde a las coordenadas (399, 119), sencillamente porque el primer pixel (esquina superior izquierda) no corresponde a las coordenadas (1,1) sino a (0,0).

Nota: No está de más mencionar que cuando nos referimos a alguna coordenada, el primer valor se refiere a la coordenada X (horizontal) y el segundo a la coordenada Y (vertical).
Paleta de Colores
Las herramientas de dibujo de GD nos piden, entre sus parámetros, algún color definido. En otras palabras, para dibujar un rectángulo, tendremos que definir las coordenadas del rectángulo así como su color.
Aún cuando trabajemos con imagenes indexadas, los colores los asignamos con los valores de R (rojo), G (verde) y B (azul), al igual que un color de 24 bits (8 bits por canal).
La función para asignar colores es la siguiente:
imagecolorallocate( $imagen, R, G, B );
Lo más práctico es generar una paleta de los colores que vamos a utilizar para después irlos asignando cuando sea el caso, esto es:
$rojo = imagecolorallocate($imagen,255,0,0); $verde = imagecolorallocate($imagen,0,255,0); $azul = imagecolorallocate($imagen,0,0,255); $negro = imagecolorallocate($imagen,0,0,0); $blanco = imagecolorallocate($imagen,255,255,255); $amarillo = imagecolorallocate($imagen,255,255,0);
La siguiente imagen muestra una paleta de colores y sus valores RGB correspondientes:

Dibujando Puntos y Líneas
La función para dibujar un punto es muy sencilla, se requiere hacer referencia a la imagen creada, asignar las coordenadas X y Y y definir el color del punto. Esto es:
imagesetpixel( $imagen, x, y, $color );
La función para dibujar una línea es muy similar, pero requiere de las coordenadas de inicio de la línea y las coordenadas del final.
imageline( $imagen, x1, y1, x2, y2, $color );
La siguiente muestra la creación de un punto en las coordenadas (30,30) y una línea de coordenadas (30,80), (270,80):

El código para generar la imagen anterior (sin los textos) es el siguiente:
< ?php
header("Content-type: image/gif");
$imagen = imagecreate(300,100);
$bgcolor = imagecolorallocate($imagen,230,230,230);
$negro = imagecolorallocate($imagen,0,0,0);
imagesetpixel($imagen,30,30,$negro);
imageline($imagen,30,80,270,80,$negro);
imagegif($imagen);
imagedestroy($imagen);
?>




