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
- (over 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.
-
+ ImageMagick® is a software suite to create, edit, compose, or convert
+ bitmap images. It can read and write images in a variety of formats (over
+ 200) including PNG, JPEG, GIF, HEIC, TIFF, DPX, EXR, WebP, Postscript,
+ PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort,
+ 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
+ language. Choose from these interfaces: G2F (Ada), MagickCore (C),
+ MagickWand (C), ChMagick (Ch), ImageMagickObject (COM+), Magick++ (C++),
+ JMagick (Java), L-Magick (Lisp), Lua, NMagick (Neko/haXe), Magick.NET
(.NET), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP
(PHP), IMagick (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick
(Tcl/TK). With a language interface, use ImageMagick to modify or create
images dynamically and automagically.
+ ImageMagick utilizes multiple computational threads to increase performance
+ and can read, process, or write mega-, giga-, or tera-pixel image sizes.
+
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 in
- both open and proprietary applications. It is distributed under an Apache
- 2.0-style license, approved by the OSI.
-
+ or as source code that you may use, copy, modify, and distribute in both open
+ and proprietary applications. It is distributed under the Apache 2.0 license.
+
The ImageMagick development process ensures a stable API and ABI. Before
each ImageMagick release, we perform a comprehensive security assessment
- that includes memory and thread error detection to help prevent exploits.
+ that includes memory error and thread data race detection to prevent
+ security vulnerabilities.
-Features and Capabilities
+ ImageMagick is available from
+ https://www.imagemagick.org/script/download.php. It runs on Linux, Windows,
+ Mac Os X, iOS, Android OS, and others.
- Here are just a few examples of what ImageMagick can do:
+ The authoritative ImageMagick web site is https://www.imagemagick.org. The
+ authoritative source code repository is https://github.com/ImageMagick. We
+ maintain a source code mirror at https://gitlab.com/ImageMagick.
- * 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.
- * Animation: create a GIF animation sequence from a group of images.
- * Text & comments: insert descriptive or artistic text in an image.
- * Image identification: describe the format and attributes of an image.
- * Composite: overlap one image over another.
- * Montage: juxtapose image thumbnails on an image canvas.
- * Generalized pixel distortion: correct for, or induce image distortions
- including perspective.
- * Morphology of shapes: extract features, describe shapes and recognize
- patterns in images.
- * Motion picture support: read and write the common image formats used in
- digital film work.
- * Image calculator: apply a mathematical expression to an image or image
- channels.
- * Discrete Fourier transform: implements the forward and inverse DFT.
- * High dynamic-range images: accurately represent the wide range of
- intensity levels found in real scenes ranging from the brightest direct
- sunlight to the deepest darkest shadows.
- * Encipher or decipher an image: convert ordinary images into
- unintelligible gibberish and back again.
- * Virtual pixel support: convenient access to pixels outside the image
- region.
- * Large image support: read, process, or write mega-, giga-, or tera-pixel
- image sizes.
- * Threads of execution support: ImageMagick is thread safe and most
- internal algorithms are OpenMP-enabled to take advantage of speed-ups
- offered by multicore processor chips.
- * Heterogeneous distributed processing: certain algorithms are
- OpenCL-enabled to take advantage of speed-ups offered by executing in
- concert across heterogeneous platforms consisting of CPUs, GPUs, and
- other processors.
- * ImageMagick on the iPhone: convert, edit, or compose images on your
- iPhone.
+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, deskew, 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.
+ * Animation: create a GIF animation sequence from a group of images.
+ * Text & comments: insert descriptive or artistic text in an image.
+ * Image gradients: create a gradual blend of one color whose shape is
+ horizontal, vertical, circular, or ellipical.
+ * Image identification: describe the format and attributes of an image.
+ * Composite: overlap one image over another.
+ * Montage: juxtapose image thumbnails on an image canvas.
+ * Generalized pixel distortion: correct for, or induce image distortions
+ including perspective.
+ * Computer vision: Canny edge detection.
+ * Morphology of shapes: extract features, describe shapes and recognize
+ patterns in images.
+ * Motion picture support: read and write the common image formats used in
+ digital film work.
+ * Image calculator: apply a mathematical expression to an image or image
+ channels.
+ * Connected component labeling: uniquely label connected regions in an
+ image.
+ * Discrete Fourier transform: implements the forward and inverse DFT.
+ * Perceptual hash: maps visually identical images to the same or similar
+ hash-- useful in image retrieval, authentication, indexing, or copy
+ detection as well as digital watermarking.
+ * Complex text layout: bidirectional text support and shaping.
+ * Color management: accurate color management with color profiles or in
+ lieu of-- built-in gamma compression or expansion as demanded by the
+ colorspace.
+ * High dynamic-range images: accurately represent the wide range of
+ intensity levels found in real scenes ranging from the brightest direct
+ sunlight to the deepest darkest shadows.
+ * Encipher or decipher an image: convert ordinary images into
+ unintelligible gibberish and back again.
+ * Virtual pixel support: convenient access to pixels outside the image
+ region.
+ * Large image support: read, process, or write mega-, giga-, or
+ tera-pixel image sizes.
+ * Threads of execution support: ImageMagick is thread safe and most
+ internal algorithms are OpenMP-enabled to take advantage of speed-ups
+ offered by multicore processor chips.
+ * Distributed pixel cache: offload intermediate pixel storage to one or
+ more remote servers.
+ * Heterogeneous distributed processing: certain algorithms are
+ OpenCL-enabled to take advantage of speed-ups offered by executing in
+ concert across heterogeneous platforms consisting of CPUs, GPUs, and
+ other processors.
+ * ImageMagick on the iPhone: convert, edit, or compose images on your
+ iPhone or iPad.
+
Examples of ImageMagick Usage shows how to use ImageMagick from the
command-line to accomplish any of these tasks and much more. Also,
see Fred's ImageMagick Scripts: a plethora of command-line scripts that
perform geometric transforms, blurs, sharpens, edging, noise removal,
- and color manipulations.
+ and color manipulations. With Magick.NET, use ImageMagick without having
+ to install ImageMagick on your server or desktop.
+