Biblioteca de gráficos GD

biblioteca gráfica

La Biblioteca de gráficos GD es una biblioteca de software para manipular imágenes creada por Thomas Boutell y otros colaboradores. Está programada en C, pero se han desarrollado interfaces para otros lenguajes de programación. Puede crear y manipular imágenes en formato GIF, JPEG, PNG, y WBMP.

Biblioteca de gráficos GD
Información general
Tipo de programa Biblioteca gráfica
Desarrollador Thomas Boutell
Lanzamiento inicial [1]
Licencia Licencia tipo BSD
Información técnica
Programado en C
Archivos editables
Enlaces

El soporte para dibujar GIF fue abandonado en 1999 cuando Unisys revocó la licencia entregada para usarse en proyectos de software libre, ya que GIF usaba el algoritmo de compresión LZW. Cuando la patente de Unisys expiró en 2004, el soporte para GIF fue habilitado nuevamente.

GD originalmente signiicaba "GIF Draw" (o Dibujado de GIF). Sin embargo, desde la revocación de la patente, pasó a significar "Graphics Draw" (Dibujado de Gráficos).

GD puede crear imágenes a partir de líneas, arcos, texto (usando las fuentes seleccionadas o TrueType), otras imágenes, o múltiples colores. La versión 2.0 agregó soporte para imágenes de color verdadero, canales alpha, redimensionado escalado (o Interpolación (fotografía) y otras características.

GD soporta numerosos lenguajes de programación, como C, PHP, Perl, Python, OCaml, Tcl, Lua, Pascal, GNU Octave, REXX y Ruby. Además, el intérprete de comandos "Fly" permite la creación de imágenes "al vuelo" usando GD.[2]

GD es usado extensivamente en PHP, donde una versión modificada incluida por defecto en PHP 4.0 soporta funciones adicionales. Desde PHP 5.3 se puede usar opcionalmente una instalación GD en el sistema además de la versión incluida, para obtener características adicionales.

Cambios durante el desarrollo

editar

El 4 de enero de 2007, pasó a manos de by Pierre Joye, un conocido desarrollador de PHP [cita requerida]. El nuevo desarrollador ha lanzado varias versiones,[3][4]​ pero no ha habido más lanzamientos de GD desde 2007.

Ejemplos

editar

Este es un ejemplo con PHP usando la función imagefilledarc():

<?php

// create image
$image = imagecreatetruecolor(100, 100);

// allocate some colors
$white    = imagecolorallocate($image, 0xFF, 0xFF, 0xFF);
$gray     = imagecolorallocate($image, 0xC0, 0xC0, 0xC0);
$darkgray = imagecolorallocate($image, 0x90, 0x90, 0x90);
$navy     = imagecolorallocate($image, 0x00, 0x00, 0x80);
$darknavy = imagecolorallocate($image, 0x00, 0x00, 0x50);
$red      = imagecolorallocate($image, 0xFF, 0x00, 0x00);
$darkred  = imagecolorallocate($image, 0x90, 0x00, 0x00);

// make the 3D effect
for ($i = 60; $i > 50; $i--) {
   imagefilledarc($image, 50, $i, 100, 50, 0, 45, $darknavy, IMG_ARC_PIE);
   imagefilledarc($image, 50, $i, 100, 50, 45, 75 , $darkgray, IMG_ARC_PIE);
   imagefilledarc($image, 50, $i, 100, 50, 75, 360 , $darkred, IMG_ARC_PIE);
}

imagefilledarc($image, 50, 50, 100, 50, 0, 45, $navy, IMG_ARC_PIE);
imagefilledarc($image, 50, 50, 100, 50, 45, 75 , $gray, IMG_ARC_PIE);
imagefilledarc($image, 50, 50, 100, 50, 75, 360 , $red, IMG_ARC_PIE);

// flush image
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
?>
 
El que da como resultado un gráfico circular.
 

Véase también

editar

Referencias

editar
  1. http://www.boutell.com/gd/faq.html
  2. http://martin.gleeson.com/fly/ Archivado el 6 de diciembre de 2011 en Wayback Machine. "fly" site by Martin Gleeson
  3. GD, Boutell.com.
  4. GD News

Enlaces externos

editar