MagickNet - A .NET Wrapper for the ImageMagick® Library

MagickNet© is an API for the ImageMagick® library, wrapping the functionality into the CLR for access by the .NET languages. It operates on a simlar principle to the Magick++ API, encapsulating the main Image Object into a Managed object. The class library provides all the marshalling required between the CLR managed and ImageMagick's unmanaged memory.

As much as possible, I have also tried to interface the .NET Framework's native Sytem and System.Drawing objects into the methods and properties of the MagickNet object. As an example, the MagickNet Geometry object has properties and methods taking System.Drawing.Size and System.Drawing.Point objects. Blob objects can take or return System.Array objects for their data, and the main Image Object can be converted to a .NET System.Drawing.Image with a single method call.

Full credit must be given here to Bob Friesenhahn for developing the Magick++ library. I used much of his code as a template for this wrapper, although I have called none of his functions from the library itself.

There is still quite a bit of work to be done to complete this library, but the basic imaging functionality is there. It cannot yet perform any of the Drawing functions (as per the Magick++ Drawable classes), not does it provide clean Pixel-level access. However, the image manipulations are available on individual images, and collections of images may be processed to and from files.

The source for the MagickNet class library can be downloaded here.

The vc++ prj file for MagickNet can be downloaded here, if you are having troubles compiling it.

Full documentation starts here.

Return to