![]() | |
Entwickler | Thomas Boutell |
---|---|
Erstveröffentlichung | 1994 ;Vor 27 Jahren ( 1994) |
Stabile Version | 2.3.2 ![]() |
Repository | https://github.com/libgd/libgd |
Geschrieben in | C. |
Betriebssystem | Plattformübergreifend |
Art | Grafikbibliothek |
Lizenz | BSD-ähnliche Lizenz |
Webseite | libgd.github.io |
Die GD Graphics Library ist eine Grafik - Software - Bibliothek von Thomas Boutell und anderen für diedynamische Manipulation von Bildern. Die native Programmiersprache ist ANSI C, es gibt jedoch Schnittstellen für viele andere Programmiersprachen.Es können GIFs, JPEGs, PNGs und WBMPs erstellt werden. Die Unterstützung für das Zeichnen von GIFs wurde 1999 eingestellt, als Unisys die lizenzfreie Lizenz für nichtkommerzielle Softwareprojekte für dievon GIFs verwendete LZW- Komprimierungsmethodewiderrief.Beim Unisys- Patent Am 7. Juli 2004 weltweit abgelaufen, wurde die GIF-Unterstützung anschließend wieder aktiviert.
GD stand ursprünglich für "GIF Draw".Seit dem Widerruf der Unisys-Lizenz steht sie jedoch informell für "Graphics Draw".
GD kann Bilder erstellen, die aus Linien, Bögen, Text (mit vom Programm ausgewählten Schriftarten), anderen Bildern und mehreren Farben bestehen.Version 2.0 bietet Unterstützung für TrueColor- Bilder, Alphakanäle, Resampling (für eine reibungslose Größenänderung von Truecolor-Bildern) und viele andere Funktionen.
GD unterstützt zahlreiche Programmiersprachen, darunter C, PHP, Perl, Python, OCaml, Tcl, Lua, Pascal, GNU Octave, REXX, Ruby und Go. Darüber hinaus ermöglicht der Befehlszeileninterpreter "Fly" die Erstellung von Bildern ("on the fly") mit GD.GD-Skripte können daher in möglicherweise jeder Sprache geschrieben und mit diesem Tool ausgeführt werden.
GD wird häufig mit PHP verwendet, wobei eine modifizierte Version, die zusätzliche Funktionen unterstützt, standardmäßig ab PHP 4.3 enthalten ist und zuvor eine Option war.Ab PHP 5.3 kann auch eine Systemversion von GD verwendet werden, um die zusätzlichen Funktionen zu erhalten, die zuvor nur für die gebündelte Version von GD verfügbar waren.
Das folgende Beispiel gibt ein 3D-aussehendes Kreisdiagramm aus (aus der PHP GD-Dokumentation zurFunktion imagefilledarc () ).
lt;?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 effectfor ($i = 60; $i gt; 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 imageheader('Content-type: image/png');imagepng($image);imagedestroy($image);?gt;