GraphicsMagick Programming Interfaces

GraphicsMagick capabilities may be accessed from many languages and scripting environments via programming APIs as shown in the following table:



C Core

C language API for the lowest-level core programming interface.

C Wand

C language API for the mid-level Wand API programming interface.


Magick++ provides an abstract object-oriented C++ interface.


Native Go binding to GraphicsMagick's MagickWand C API


GraphicsMagick for Lua interfaces to GraphicsMagick's Wand API.


Graphicsmagick for node.js provides server-side support for Javascript programming with node.js.


Gmagick provides a small and fast extension for PHP.


PerlMagick provides an object-oriented Perl interface.


PgMagick provides the power and ease of the C++ API, but in Python.

Redis Module

Image processing via redis APIs

Ruby (RMagick)

RMagick provides a native Ruby language extension

Ruby (MiniMagick)

MiniMagick provides a Ruby language extension via a command line wrapper.


TclMagick provides a scripting environment based on Tcl or Tcl/Tk.

GraphicsMagick .NET

GraphicsMagick.NET by Dirk Lemstra provides a Windows .NET programming interface, allowing use of GraphicsMagick features via a stand-alone package.

Windows OLE

The ImageMagickObject OLE control supports utility-style access via a COM+ object.

Some of these languages and scripting environments are supported by the GraphicsMagick Group while others are developed and supported by third parties.

Copyright © GraphicsMagick Group 2002 - 2023