Creating a security policy that fits your specific local environment before making use of ImageMagick is highly advised. You can find guidance on setting up this policy. Also, it's important to verify your policy using the validation tool. As of ImageMagick version 7.1.1-16, you can choose and customize one of these security policies: Open, Limited, Secure, and Websafe.
By default, ImageMagick supports up to 32 channels. As of ImageMagick version 7.1.1-16, you can enable up to 64 channels by adding the --enable-64bit-channel-masks option to the Linux configure build script. For Windows, just select the option from the configure application.
With recent releases of ImageMagick 7, we continue to evolve our support of Multispectral imagery. PSD, TIFF, MIFF, MPC, and FTXT can now read and write multispectral images with more multispectral formats to follow.
We recently updated Anthony's ImageMagick Example Usage pages to support version 7 tools and options.
The MagickCache provides methods and tools to cache images, image sequences, video, audio or metadata in a local folder. Any content is memory-mapped for efficient retrieval. Additional efficiencies are possible by retrieving a portion of an image. Content can persist or you can assign a time-to-live (TTL) to automatically expire content when the TTL is exceeded. MagickCache supports virtually unlimited content upwards of billions of images making it suitable as a web image service.
The ImageMagick development process ensures a stable API and ABI. Before each ImageMagick release, we perform a comprehensive security assessment that includes memory error, thread data race detection, and continuous fuzzing to detect and prevent security vulnerabilities.
Want more performance from ImageMagick? Try these options:
- add more memory to your system, see the pixel cache;
- add more cores to your system, see threads of execution support;
- reduce lock contention with the tcmalloc memory allocation library;
- push large images to a solid-state drive, see large image support.
If these options are prohibitive, you can reduce the quality of the image results. The default build is Q16 HDRI. If you disable HDRI, you use half the memory and instead of predominantly floating point operations, you use the typically more efficient integer operations. The trade-off is reduced precision and you cannot process out of range pixel values (e.g. negative). If you build the Q8 non-HDRI version of ImageMagick, you again reduce the memory requirements in half-- and once again there is a trade-off, even less precision and no out of range pixel values. For a Q8 non-HDRI build of ImageMagick, use these configure script options: --with-quantum-depth=8 --disable-hdri.
We discovered a bug in the pseudo-random generator prior to ImageMagick 7.0.9-11, the first 3 values repeated because the random state was not initialized properly. As a consequence of the fix, expect a different numerical sequence when seeding (-seed).
As an analog to linear (RGB) and non-linear (sRGB) color colorspaces, as of ImageMagick 7.0.7-17, we introduce the LinearGray colorspace. Gray is non-linear grayscale and LinearGray is linear (e.g. -colorspace linear-gray).
Now that ImageMagick version 7 is released, we continue to maintain the legacy release of ImageMagick, version 6, at https://legacy.imagemagick.org. Learn how ImageMagick version 7 differs from previous versions with our porting guide.