Ruth  Clarke

Ruth Clarke


Libgd: GD Graphics Library For C

GD Graphics (Draw) Library 

GD is an open source code library for the dynamic creation of images by programmers.

GD is written in C, and "wrappers" are available for Perl, PHP and other languages. GD can read and write many different image formats. GD is commonly used to generate charts, graphics, thumbnails, and most anything else, on the fly.

The most common applications of GD involve website development, although it can be used with any standalone application!

The library was originally developed by Thomas Boutell and is now maintained by many contributors (see the CONTRIBUTORS file) under the umbrella of

If you like to contribute, report bugs, see how to contribute document

For security related issues, please contact us at

Support available in or using issues.

We also have a mailing list. To subscribe to any mailing list, send an email to Then emails can be sent to


Please visit our homepage for more details.

Supported Image Formats

GD has support for:

Besides that, GD depends on some external libraries, which are all optional and disabled by default:

  • FreeType for rendering fonts
  • Fontconfig for configuring and customizing font access
  • libraqm for complex text layout
  • libimagequant for conversion of RGBA images to 8-bit indexed-color images
    • NOTE libimagequant is dual-licensed: GPLv3 and commercial license

Platforms supported

CI means whether we have an automatic CI for this platform. If someone has CI for these platforms or any other platforms not listed here and would like to add them to our automatic CI, please get in touch with us, it will much appreciated!

Linux x64
Linux x86
Linux ARM64
Windows x86
Windows x64
Windows arm64x
macOS x64
macOS M1x

It is also known to work on almost all variations of *BSD, Solaris, etc. We don't have CI nor environment to test them. However many progamming languages binding do test libgd on these platforms.


It should compile with all C99 and C++ compliant compilers, either using CMake or the configure script.

We do have CI using:

  • GCC
  • CLang
  • Visual Studio
  • Xcode
  • MingW

Supported Versions

  • GD 2.3 (Branch GD-2.3) serie is in active support for bug fixes. No new additions will be added.
  • GD 2.4 (master) is the active development branch. No release date yet.
  • GD 3.0 has been started, focusing on high quality 2D Vector drawing APIs and full support of actual ARGB 32 bits/8bits or float. It is not production ready yet

Author: libgd
Source code:
License: View license

#c #cpluplus 

What is GEEK

Buddha Community

Libgd: GD Graphics Library For C
Tamale  Moses

Tamale Moses


How to Run C/C++ in Sublime Text?

C and C++ are the most powerful programming language in the world. Most of the super fast and complex libraries and algorithms are written in C or C++. Most powerful Kernel programs are also written in C. So, there is no way to skip it.

In programming competitions, most programmers prefer to write code in C or C++. Tourist is considered the worlds top programming contestant of all ages who write code in C++.

During programming competitions, programmers prefer to use a lightweight editor to focus on coding and algorithm designing. VimSublime Text, and Notepad++ are the most common editors for us. Apart from the competition, many software developers and professionals love to use Sublime Text just because of its flexibility.

I have discussed the steps we need to complete in this blog post before running a C/C++ code in Sublime Text. We will take the inputs from an input file and print outputs to an output file without using freopen file related functions in C/C++.

#cpp #c #c-programming #sublimetext #c++ #c/c++

Dicey Issues in C/C++

If you are familiar with C/C++then you must have come across some unusual things and if you haven’t, then you are about to. The below codes are checked twice before adding, so feel free to share this article with your friends. The following displays some of the issues:

  1. Using multiple variables in the print function
  2. Comparing Signed integer with unsigned integer
  3. Putting a semicolon at the end of the loop statement
  4. C preprocessor doesn’t need a semicolon
  5. Size of the string matters
  6. Macros and equations aren’t good friends
  7. Never compare Floating data type with double data type
  8. Arrays have a boundary
  9. Character constants are different from string literals
  10. Difference between single(=) and double(==) equal signs.

The below code generates no error since a print function can take any number of inputs but creates a mismatch with the variables. The print function is used to display characters, strings, integers, float, octal, and hexadecimal values onto the output screen. The format specifier is used to display the value of a variable.

  1. %d indicates Integer Format Specifier
  2. %f indicates Float Format Specifier
  3. %c indicates Character Format Specifier
  4. %s indicates String Format Specifier
  5. %u indicates Unsigned Integer Format Specifier
  6. %ld indicates Long Int Format Specifier

Image for post

A signed integer is a 32-bit datum that encodes an integer in the range [-2147483648 to 2147483647]. An unsigned integer is a 32-bit datum that encodes a non-negative integer in the range [0 to 4294967295]. The signed integer is represented in twos-complement notation. In the below code the signed integer will be converted to the maximum unsigned integer then compared with the unsigned integer.

Image for post

#problems-with-c #dicey-issues-in-c #c-programming #c++ #c #cplusplus

Represent Tree using graphics in C/C++

Prerequisite: graphics.hHow to include graphics.h?

In C/C++ there is graphics.h header file which is used to create the object like line, circle, etc.

Given an array arr[] of N integers, the task is to write C++ program to create the Tree using graphics.h.

Approach: To run the program we have the include the below header file:


We will create a Tree with the help below functions:

  1. setcolor(color): This function present in graphic.h header file which is used to set the current drawing color to the new color.
  2. floodfill(pattern, color): function is used to fill an enclosed area. The current fill pattern and fill color is used to fill the area.
  3. circle(x, y, radius): The header file graphics.h contains circle() function which draws a circle with center at (x, y) and given radius.
  4. outtextxy(): The header file graphics.h contains outtextxy() function which displays the text or string at a specified point (x, y) on the screen.

#computer-graphics #trees #c #c++ #cplusplus #programming-c

Shaylee  Lemke

Shaylee Lemke


How to solve the implicitly declaring library function warning in C

Learn how to solve the implicitly declaring library function warning in C

#c #c# #c++ #programming-c

Ari  Bogisich

Ari Bogisich


Loops in C++ | For, While, and Do While Loops in C++

In this Video We are going to see how to use Loops in C++. We will see How to use For, While, and Do While Loops in C++.
C++ is general purpose, compiled, object-oriented programming language and its concepts served as the basis for several other languages such as Java, Python, Ruby, Perl etc.

#c #c# #c++ #programming-c