[ImageMagick] [sponsor]

Introduction to ImageMagick

ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.

The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: G2F (Ada), MagickCore (C), MagickWand (C), ChMagick (Ch), ImageMagickObject (COM+), Magick++ (C++), JMagick (Java), L-Magick (Lisp), nMagick (Neko/haXe), MagickNet (.NET), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images dynamically and automagically.

ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you may freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.

Features and Capabilities

Here are just a few examples of what ImageMagick can do:

  • Format conversion: convert an image from one format to another (e.g. PNG to JPEG)
  • Transform: resize, rotate, crop, flip or trim an image
  • Transparency: render portions of an image invisible
  • Draw: add shapes or text to an image
  • Decorate: add a border or frame to an image
  • Special effects: blur, sharpen, threshold, or tint an image
  • Image calculator: apply a mathematical expression to an image or image channels
  • Text & comments: insert descriptive or artistic text in an image
  • Image identification: describe the format and attributes of an image
  • Animation: create a GIF animation sequence from a group of images
  • Composite: overlap one image over another
  • Montage: juxtapose image thumbnails on an image canvas
  • High dynamic-range imaging: accurately represent the wide range of intensity levels found in real scenes ranging from the brightest direct sunlight to the deepest darkest shadows
  • Large image support: read, process, or write mega- and giga-pixel image sizes

Examples of ImageMagick Usage shows how to use ImageMagick from the command-line to accomplish any of these tasks and much more.

Books About ImageMagick

Definitive Guide to ImageMagick An open source project backed by years of continual development, ImageMagick supports about 100 image formats and can perform impressive operations such as creating images from scratch; changing colors; stretching, rotating, and overlaying images; and overlaying text on images. Whether you use ImageMagick to manage the family photos or to embark on a job involving millions of images, this book provides you with the knowledge to manage your images with ease.

The Definitive Guide to ImageMagick explains all of these capabilities and more in a practical, learn-by-example fashion. You'll get comfortable using ImageMagick for any image-processing task. Through the book's coverage of the ImageMagick interfaces for C, Perl, PHP, and Ruby, you'll learn how to incorporate ImageMagick features into a variety of applications.


ImageMagick Tricks ImageMagick Tricks by Sohail Salehi: This fast-paced and practical tutorial is packed with examples of photo manipulations, logo creation, animations, and complete web projects. With this book up your sleeve, you'll be creating spellbinding images from code in no time. The publisher, Packt, is donating a percentage of every book sold to the ImageMagick project.


User Community

To join the ImageMagick user community, try the discourse server or mailing lists. Both permit you to review questions or comments (with informed responses) posed by ImageMagick users as well as an opportunity to ask your own questions.