Biblioteca de Gráficos GD - GD Graphics Library

Biblioteca de Gráficos GD
Gdlogo small.png
Desenvolvedor (s) Thomas Boutell
lançamento inicial 1994 ; 27 anos atrás  ( 1994 )
Versão estável
2.3.2  Edite isso no Wikidata / 6 de março de 2021 ; 2 dias atrás  ( 6 de março de 2021 )
Repositório https://github.com/libgd/libgd
Escrito em C
Sistema operacional Plataforma cruzada
Modelo Biblioteca de gráficos
Licença Licença semelhante a BSD
Local na rede Internet libgd .github .io

A GD Graphics Library é uma biblioteca de software gráfico de Thomas Boutell e outros para a manipulação dinâmica de imagens . Sua linguagem de programação nativa é ANSI C , mas possui interfaces para muitas outras linguagens de programação. Ele pode criar GIFs , JPEGs , PNGs e WBMPs . O suporte para desenho de GIFs foi abandonado em 1999, quando a Unisys revogou a licença livre de royalties concedida a projetos de software não comerciais para o método de compactação LZW usado por GIFs. Quando a patente da Unisys expirou em todo o mundo em 7 de julho de 2004, o suporte GIF foi posteriormente reativado.

GD originalmente significava "GIF Draw". No entanto, desde a revogação da licença da Unisys, passou a significar informalmente "Graphics Draw".

GD pode criar imagens compostas de linhas, arcos, texto (usando fontes selecionadas pelo programa), outras imagens e cores múltiplas. A versão 2.0 adiciona suporte para imagens truecolor , canais alfa , reamostragem (para redimensionamento suave de imagens truecolor) e muitos outros recursos.

GD suporta várias linguagens de programação, incluindo C , PHP , Perl , Python , OCaml , Tcl , Lua , Pascal , GNU Octave , REXX , Ruby e Go . Além disso, o interpretador de linha de comando "Fly" permite a criação de imagens ("on the fly") usando GD. Os scripts GD podem, portanto, ser escritos em potencialmente qualquer linguagem e executados usando esta ferramenta.

GD é amplamente usado com PHP, onde uma versão modificada com suporte a recursos adicionais é incluída por padrão a partir do PHP 4.3 e era uma opção antes disso. A partir do PHP 5.3, uma versão de sistema do GD também pode ser usada, para obter os recursos adicionais que estavam disponíveis anteriormente apenas para a versão empacotada do GD.

Exemplo

A seguir está um exemplo que produz um gráfico circular 3D (da documentação do PHP GD sobre a função imagefilledarc () ).

<?php
    // Create an 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 the image
    header('Content-type: image/png');
    imagepng($image);
    imagedestroy($image);
?>

Veja também

Referências

links externos