Recent
ImageMagick Changes |
- A number of memory leaks were fixed
(thanks to William Anderson).
- Threading bug fixes and enhancements
(thanks to John Carnahan of WebEasy).
- Lots of 16-bit pixel component related problems fixed.
- URL's are now understood on Win32
(thanks to libXML and William Radcliffe).
- ImageMagick defaults to 16-bit per pixel component now.
- Support added for ART images (contributed by Jaroslav Fojtik).
- Added -pause to the animate program.
- You can now specify a minimum/maximum delay for an image sequence.
- Added %c to -format to get the image comment
(patch provided by Frank Mattern).
- Over compositing is now the Porter-Duff algorithm (inspired by
William Radcliffe and Alvy Ray Smith).
- You can write SVG output if the input is SVG, MVG, or WMF.
- ImageMagick now can accept AFM, PFB, and PFM fonts.
- The linewidth parameter is deprecated in PerlMagick. Use
stroke_width instead.
- Digital Applications contributed text
stroking code.
- You can now specify Truetype fonts directly. No @ prefix
is required (e.g. convert -font Arial.ttf ...)
- Digital Applications contributed line
cap and dash pattern rendering code.
- Added the Multiple composite operator for the creation of drop-shadows
(patch provided by John Harper).
- Support added for CUT images (contributed by Jaroslav Fojtik).
- Bill Radcliffe contributed fast polygoni
rendering code. Parts of the rendering algorithm were inspired by
libart.
- Support added for BMP images with a 'BA' chunk
(contributed by Jaroslav Fojtik).
- Support added for the Word Perfect Graphics (WPG) file format
(contributed by Jaroslav Fojtik).
- The pixel 'matte' field is changed to indicate the degree of pixel
transparency rather than the degree of opacity. This makes the pixels
compatable with most popular video cards, and many in-memory image
formats.
- When the pixel quantum size is eight bits, the colormap is restricted
to 256 colors, but supports up to 65535 colors when the quantum size
is sixteen bits (when QuantumLeap is defined at compilation time).
- ImageMagick is more memory efficient (by 18%) when the quantum size
is eight bits, and the image is colormapped.
-
- ImageMagick is (finally) believed to be thread safe under Windows, since
it uses the Windows synchronization APIs to lock shared data.
- Under Unix and Windows, dynamically-loaded format coder modules are
supported. There are currently 72 loadable modules. Support for
loadable modules allows the user to add or remove formats from
ImageMagick by simply adding or removing a file. New modules are
automatically detected so users may add their own modules. This support
is proven to work for Sun Solaris, Linux, and SGI IRIX. Please let us
know about other operating systems they work on. Building a modular
ImageMagick is enabled by specifing the configure options
--enable-shared --with-modules.
-
ImageMagick now has a set of modules for streaming. Here pixels are
passed to the application as they are available and deleted after use ensuring
a small memory footprint. This is useful for multi-media applications such as
MPEG.
- Image format identification (based on the file header) is now
configured via an external text file. This allows the user to add
automatic file identification for new formats added via a coder module,
or via a delegate (external program).
- XML files conforming to the W3C SVG DTD are now rendered directly by
ImageMagick. The support is incomplete but still useful.
- The Pilot Image Format (PDB) is now supported.
- The drawing primitives have been extended to support drawing bezier
curves, rounded rectangles, and arcs. There is now support for drawing
compound objects (a sequence of objects) using drawing paths. The
concept of a drawing pen has been split into stroke (for the
outline) and fill (for the objects internal color). If fill is not
defined, then only the object outline is drawn. This substantial change
results in the existing drawing commands for filled objects
(fillEllipse, fillRectangle, fillCircle, and fillPolygon) being
deprecated.
- A cache file format is now supported which is a snapshot of an
image's pixel cache as it appears on disk. Images stored in this format
(large) may be loaded instantly by ImageMagick since decoding is not
required. In order to write this format, just convert your image to the
cache format (e.g. convert image.jpg cache:image.miff).
- The build environment for Windows NT is entirely re-done. There is now
a configure program which generates a set of Visual C++ project files
which satisfy a set of reqirements (e.g. DLL, multi-thread, X11). These
project files are then used to build ImageMagick.
- The C API is significantly modified in order to provide thread-safe
operation via function re-entrancy. ImageMagick is believed to be
thread-safe when used with POSIX threads. It is not yet completely
thread safe under Windows or the Mac. Errors (of type ExceptionInfo)
are now reported by a function argument, or via a member of the current
image.
- The GaussianBlurImage() function (contributed by
runger@cs.mcgill.ca) supports Gaussian bluring an image.
- Functions (OpenCacheView(), CloseCacheView(), GetCacheView(),
SetCacheView(), and SyncCacheView()) are provided in order to support
manipulating multiple pixel views.
Image manipulation software that works like magic.