<metaname="description"content="Use ImageMagick® to create, edit, compose, and convert bitmap images. Resize an image, crop it, change its shades and colors, add captions, and more."/>
<li> `magick -size 100x100 xc:black black.pnm` no longer creates a white image (reference https://github.com/ImageMagick/ImageMagick/issues/1817).</li>
<li> Increase the maximum number of bezier coordinates (reference https://github.com/ImageMagick/ImageMagick/issues/1784).</li>
<li> Santize "'" from SHOW and WIN delegates under Linux, '"\' for Windows (thanks to Enzo Puig).</li>
<li> Correct for TGA orientation (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=34757).</li>
<li> The result for -compose Copy -extent on a CMYK image is CMYK (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=37118).</li>
<li> Fix potential buffer overflow when reading a fax image (alert from Justin).</li>
<li> Heap-buffer-overflow in Postscript coder (reference https://github.com/ImageMagick/ImageMagick/issues/1644).</li>
<li> Correction to the ModulusAdd and ModulusSubtract composite op (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=36413).</li>
<li> Put UTC time in the PNG tIME chunk instead of local time (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=32447).</li>
<li> Properly set image->colorspace in the PNG decoder (previously it was setting image->gamma, but only setting image->colorspace for grayscale and gray-alpha images. Reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=32418).</li>
<li> Fix improper use of NULL in the JNG decoder (CVE-2017-11750, Reference https://github.com/ImageMagick/ImageMagick/issues/632).</li>
<li> coders/png.c: fixed NULL dereference when trying to write an empty MNG (CVE-2017-11522, reference https://github.com/ImageMagick/ImageMagick/issues/586).</li>
<li> Introduce SetMagickSecurityPolicy() (MagickCore) and MagickSetSecurityPolicy() (MagickWand) to set the ImageMagick security policy (reference https://github.com/ImageMagick/ImageMagick/issues/407).</li>
<li> Support various image operators for the compare utility (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=31938).</li>
<li> Renamed read_vpag_chunk_callback() function to png_user_chunk_callback() in coders/png.c</li>
<li> Implemented a private PNG caNv (canvas) chunk for remembering the original dimensions and offsets when an image is cropped. Previously we used the oFFs and vpAg chunks for this purpose, but this had potential conflicts with other applications that also use the oFFs chunk.</li>
<li> coders/png.c: Added support for a proposed new PNG chunk (exIf read-write, eXIf read-only) that is currently being discussed on the png-mng-misc at lists.sourceforge.net mailing list.</li>
<li> Added support for RGB555, RGB565, ARGB4444 and ARGB1555 to the BMP encoder (reference https://github.com/ImageMagick/ImageMagick/issues/344).</li>
<li> Set colorspace to sRGB if -append has non-homogenous colorspaces (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=29105).</li>
<li> Return correct offset for negative index for -fx option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=31019).</li>
<li> ABI breakage requires an SO bump (reference https://github.com/ImageMagick/ImageMagick/issues/320).</li>
<li> Fixed improper scaling of certain FITS images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=31028).</li>
<li> Properly center text label (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=31027).</li>
<li> If a convenient line break is not found, force it for caption: (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=30887).</li>
<li> Off by 1 error when computing the standard deviation (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=30866).</li>
<li> Permit EPT images with just a TIFF or EPS image, not both (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=30921).</li>
<li> The -clone option no longer leak memory.</li>
<li> Added layer RLE compression to the PSD encoder.</li>
<li> Added define 'psd:preserve-opacity-mask' to preserve the opacity mask in a PSD file.</li>
<li> Fixed issue where the display window was used instead of the data window when reading EXR files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&p=137849).</li>
<li> Fix small memory leak (patch provided by Андрей Черный).</li>
<li> Coder path traversal is not authorized (bug report provided by Masaaki Chida).</li>
<li> Turn off alpha channel for the compare difference image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=29828).</li>
<li> Security improvements to TEXT coder broke it (reference</li>
<li> Prevent possible shell command injection vulnerability through the authenticate parameter of the PDF, PCL and XPS coders (report from Erez Turjeman). https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=29754).</li>
<li> Fix stroke offset problem for -annotate (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=29626).</li>
<li> Add additional checks to DCM reader to prevent data-driven faults (bug report from Hanno Böck).</li>
<li> Fixed memory leak when reading an SVG without width/height (reference https://imagemagick.org/discourse-server//viewtopic.html?f=27&p=130197).</li>
<li> Pair AcquireMagickResource with calls to RelinquishMagickResource when resource limits are hit (reference https://github.com/ImageMagick/ImageMagick/pull/75).</li>
<li> Return non-zero for the -format %b option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=28969).</li>
<li> The DICOM reader now handles the rescale intercept and slope.</li>
<li> Added 'bmp3:alpha' option for including the alpha channel when writing an image in the BMP3 format. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=28733).</li>
<li> Only one thread permitted when delegating to the Ghostscript library under Windows.</li>
<li> Fixed bug in SetPixelCacheExtent that made images all black (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28514).</li>
<li> Added support for reading DICOM images with implicit vr little-endian transfer syntax.</li>
<dt>2015-11-02 6.9.2-6 Samuel Thibault <samuel.thibault@...org></dt>
<li> Added 6dot variant for unicode and iso braille formats (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&p=127111).</li>
<li> Fixed alpha blending issue with semi-transparent pixels in the merged image of PSD files. This can be disabled by setting the option 'psd:alpha-unblend' to 'off' (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28169).</li>
<li> Fixed issue in jpeg:extent that prevented it from working (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&p=126638).</li>
<li> Fixed memory leak when reading Photoshop layers in a TIFF file.</li>
<li> Added extra checks to avoid out of bounds error when parsing the 8bim profile (reference https://github.com/ImageMagick/ImageMagick/issues/31).</li>
<li> Fixed size of memory allocation in RLE coder to avoid segfault (reference https://github.com/ImageMagick/ImageMagick/issues/32).</li>
<li> Add Bootstrap MIT license to ImageMagick web CSS and JS.</li>
<li> Use modern idiom for autoconf Fix a forgotten dir when regenerating html doc (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28363).</li>
<li> The -colorspace gray option no long leaves a ghostly shadow (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28350).</li>
<li> Support color compliance for TXT format (e.g. -define txt:compliance=css) (bug report from Anthony).</li>
<li> The first argument of a hsl() color is integer, not percentage (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=26072).</li>
<li> Limit -fx recursive to avoid stack overflow (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28200).</li>
<li> Support inline images with data URLS.</li>
<li> Report progress less often (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28299).</li>
<li> Don't set image colorspace to gray for -alpha copy option.</li>
<li> Fixed a possible memory leak associated with the -sampling-factor option.</li>
<li> GetImageType() no longer has side-effects to match behavior of IMv7.</li>
<li> Swap pixels for -spread command-line option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=28043).</li>
<li> fx logical operations short circuit (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28179).</li>
<li> Type cast intensity variable (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28182).</li>
<li> Fix ModulusAdd & ModulusSubstract for HDRI compositing (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=28186).</li>
<li> coders/magick.c: added "-define h:format=FMT" and "-define magick:format=FMT" options. FMT can be any output format supported by ImageMagick except "H" or "MAGICK". If this define is omitted, the encoder uses GIF by default for pseudoclass images and PNM for directclass images, as previously. Made "MAGICK" (read-write) and "H" (write-only) visible in the format list.</li>
<li> Cache cloning on disk optimized with sendfile() (if available).</li>
<li> Add an additional check for end-of-file for the RLE coder (reference https://imagemagick.org/discourse-server//viewforum.html?f=3&t=27870).</li>
<li> Fixed transparency issue with 16-bit tga files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=27469).</li>
<li> Fixed writing label and comment in tiff images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25516).</li>
<li> Jpeg images no longer have pixels per inch as a default value for density units when the density is not set (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=27589).</li>
<li> Added support for setting the font color with -fill to the pango coder.</li>
<li> Reduce draw epsilon to increase mathematical stability.</li>
<li> Fixed UTF8 issue when determining the current working directory on Windows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=27295).</li>
<li> Fix integer overflow when scaling a 1-bit sample to Q64 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=27195).</li>
<li> Account for differences in image size when comparing two images (bug report from Dirk).</li>
<li> Set an upper ceiling compression with -quality and jpeg:extent (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=27071).</li>
<li> Fixed command line execution in Windows for delegates that move files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=27027).</li>
<li> Report Ghostscript version when -verbose is used and when an exception is raised.</li>
<li> Fixed invalid path check in MagickCoreGenesis under Windows and disabled ProvideDllMain by default (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&p=118875).</li>
<li> Don't handle a "previous" image in the PNG or JNG decoder.</li>
<li> Don't override gamma with 1.0 when reading a grayscale PNG image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=26576).</li>
<li> Update progress monitor for every PNG row instead of every pass (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=26589).</li>
<li> Reject input PNG with dimensions larger than specified with -limit width and -limit height.</li>
<li> Added support for reading jpeg compressed YCCK tiff files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24412).</li>
<li> Fixed reading DICOM files with big endian transfer syntax (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=26448).</li>
<li> Support xyY colorspace (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=26324).</li>
<li> Reduce noise while preserving edges with the -kuwahara option.</li>
<li> Off-by-one count when parsing an 8BIM profile.</li>
<li> Locale.c won't build if uselocale found but strtod_l isn't (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=26362).</li>
<li> OpenCL no longer benchmarks are run on every initialization (patch submitted by Jan Steffens).</li>
<li> Don't clone a 0x0 image (bug report from Hanno Böck).</li>
<li> Write LAB pixels as percentages in the TXT image format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25830).</li>
<li> Throw exception when image morphology differs when comparing (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25927).</li>
<li> Do not let libpng16 check ICC/sRGB profiles in non-debug runs; we do it ourselves anyway. Avoids emitting "known incorrect profile" warnings. For strict profile checking and warning, use "-debug coder".</li>
<li> Support RMS argument for -evaluate-sequence and -statistic options.</li>
<li> Fix lseek define for a successful compile under 64-bit MinGW.</li>
<li> Pipe image to display program no longer reports an exception (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23532).</li>
<li> Check that profile is non-NULL in coders/tiff.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25770).</li>
<li> The -fx equality operator returns a proper boolean result now (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25580).</li>
<li> Permit spaces in the gradient color specification (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25614).</li>
<li> Fix IdentifyImage() crash when image->magick member is null (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25615).</li>
<li> The -format M and Y channels are no longer reversed (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25633).</li>
<li> Remove Makefile race condition where two targets attempt to install magick-baseconfig.h (reference http://git.buildroot.net/buildroot/commit/?id=7395ee9d3b88e45798143e05a28d6d4b51409130)</li>
<li> Fix memory leak in BlobToStringInfo() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25639).</li>
<li> In certain cases, -adaptive-sharpen failed to sharpen (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23211</li>
<li> Fixed bug with the PNG00 subformat when the original format was PNG32.</li>
<li> The "-strip" option now only removes profiles and comments from PNG output. Previously the background, density, and other metadata were also discarded.</li>
<li> Added image moments, canny edge and hough line to Magick++.</li>
<li> The 8bim profile will be updated when the icc/iptc/xmp profile is changed.</li>
<li> Fix for stack overflow in DestroyXMLTree in Windows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25457).</li>
<li> Added new coder for VIPS image format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=25445).</li>
<li> Moved detection of type to a separate method in Magick++. The type() method no longer modifies the type of the image. Use determineType() instead.</li>
<li> Improved error messages when a coder uses Ghostscript.</li>
<li> Added new coder to take a screen shot of a monitor in Windows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=23&t=25191).</li>
<li> Don't transform sRGB compatible colorspaces to sRGB, doing so inadvertently promotes colormapped images to DirectClass.</li>
<li> Use temporary path rather then current working directory (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25313).</li>
<li> Support -canny edge detection option.</li>
<li> Use MAGICKCORE_LIBOPENJP2_DELEGATE instead of MAGICKCORE_JP2_DELEGATE (reference imagemagick.org/discourse-server/viewtopic.html?f=3&t=25376).</li>
<li> Although they are internal methods, deprecate InitializeModuleList(), LoadMimeLists(), and RelinquishCommandQueue() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25263).</li>
<li> Do not block threads in the png codec when PNG_SETJMP_SUPPORTED is not defined (reference https://imagemagick.org/discourse-server//viewtopic.html?f=23&t=25218).</li>
<li> Reset colorspace to Grayscale when reading a gray PNG image with gamma > 0.75 instead of when gamma==1.0 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25136).</li>
<li> The PSD reader creates a merged image if the image does not contain one.</li>
<li> Added option pdf:fit-page to scale a pdf to the specified size (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=25044).</li>
<li> The ResolutionInfo in the 8BIM profile will be updated when an image is written.</li>
<li> Fixed UTF8 issues and added support for reading files with long path names for the Windows distribution.</li>
<li> Convert linear RGB to sRGB before writing the Targa image format.</li>
<li> Make sure we use the secure C library functions when compiling ImageMagick on Windows.</li>
<li> Tweak color reduction optimization to return a full color palette (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=25098).</li>
<li> Patch configure.ac to support FlashPix under Debian (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25140).</li>
<li> OpenCL support writes to $HOME/.config/ImageMagick, if the path does not exist, two calls to mkdir() are required (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25080).</li>
<li> Replace MAGICKCORE_JP2_DELEGATE with MAGICKCORE_LIBOPENJP2_DELEGATE in magick/static.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=25153).</li>
<li> Improved detection of JPEG 2000 code streams and .j2c support (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=24942).</li>
<li> Fix case where an image moment might have a mass of 0 or a Hu moment might be 0.</li>
<li> Enhance the TXT coder to read RGB percent values, e.g. 10.008% (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24934).</li>
<li> Added ResourceLimits class and text direction/gravity to Magick++.</li>
<li> Added support for defining dimensions with icon:auto-resize (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=24796).</li>
<li> Added image->duration to image.h, calculate duration in gif.c, and report duration in identify.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=23276).</li>
<li> The -type truecolor option for a grayscale image returns RGB JPEG (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24814).</li>
<li> Support JSON coder (.e.g. convert image.jpg image.json).</li>
<li> The -evaluate-sequence sum returns a proper alpha channel now (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24704).</li>
<li> Support OpenJPEG for JPEG-2000 support.</li>
<li> Support IsMagickWandInstantiated() method (reference https://imagemagick.org/discourse-server//viewtopic.html?f=6&t=24724).</li>
<li> LevelColorsImageChannel() returns proper status (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24751).</li>
<li> Generate a proper SVG clipping path (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24752).</li>
<li> Return image moments with the identify -moments -verbose options.</li>
<li> Perceptual hash metric for compare utility: -metric PHASH (algorithm by Fred Wienhaus).</li>
<li> Support points argument for draw MSL element.</li>
<li> Fix misplaced closing parenthesis for strncmp() call in magick/xml-tree.c.</li>
<li> The -page option now correctly sets the image page offset (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24701).</li>
<li> Fixed bug in coders/png.c that caused -define png:color-type=0 to fail (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=24568).</li>
<li> The -type bilevel option sometimes returned an all white image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24444).</li>
<li> Check blue channel threshold for -solarize option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24473).</li>
<li> Fix possible memory corruption when writing PSD images (bug report from Justin Grant).</li>
<li> Constrain color reduction acceleration to positive integers (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=24459).</li>
<li> fx:maxima.a now returns the alpha value rather than opacity (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24461).</li>
<li> An image -compose ModulusAdd negate-image returns the original (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24337).</li>
<li> Support %U escape character for resolution units (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=24140).</li>
<li> The -roll option is now working when the +x coordinate is +0 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24314).</li>
<li> Fixed problem with PNG8 reduction in coders/png.c (special case where exactly 256 colors plus one transparent color are present).</li>
<li> Set image->intensity = Rec709LuminancePixelIntensityMethod before setting the colorspace to Gray while reading a gray PNG (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24205). This ensures that image->gamma will be set to 1.0 (linear).</li>
<li> Fixed issue with colormap when reading Viff image.</li>
<li> Added support for opening https files under windows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24121).</li>
<li> Fixed incorrect format when reading EPT image from a blob (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24129).</li>
<li> Call SVG / MSL xmlCleanupParser() / xmlInitParser() once (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23991).</li>
<li> Support LEGO Mindstorms EV3 Robot Graphics File format (contributed by bdwheele@ind.../</li>
<li> Since glib-2.35.0 g_type_init() was removed (reference https://bugs.gentoo.org/show_bug.cgi?id=481042).</li>
<li> New identify define to output the location of the minimum, maximum, or mean pixel of the image (e.g. identify -define identify:locate=maximum -define identify:limit=7 rose).</li>
<li> Column columns / rows no longer inverted for RGF image format (patch from Brian Wheeler <bdwheele@india...>.</li>
<li> 16bit PSD images might have a 65536 colormap (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24102).</li>
<li> Ascii map is now declare as AsciiMap (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24106).</li>
<li> Return label for identify -format "%l" (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=24105).</li>
<li> Add option to perform Fourier normalization in either the forward or inverse transform (e.g -define fourier:normalize=inverse). The default remains as it was in the forward transform (i.e. -define fourier:normalize=forward)</li>
<li> Added the following command line options to configure.exe: /x64, set 64 bit build /mtd, set project type to: multi threaded dll /sts, set project type to: single threaded static /mts, set project type to: multi threaded static /mtsd, set project type to: multi threaded static dll /noWizard, skip the wizard and generate the project/solution files</li>
<li> Fixed infinite loop with jpeg:extent (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23314).</li>
<li> Fixed performance issue when converting jpeg to png (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23922).</li>
<li> Free disk resource if cache resources are exhausted (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23877).</li>
<li> Return proper EXIF:ISOSpeedRating property value for TIFF images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23913).</li>
<li> Escape MIFF properties with null values (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23931).</li>
<li> Allow negative pixel values in TXT image format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23923).</li>
<li> The -fx option no longer crashes for certain expressions (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23932).</li>
<li> Add support for the -compare option (e.g. convert image.png reference.png -metric RMSE -compare -format "%[distortion]" info:).</li>
<li> The internal SVG renderer is now invariant for the "fill" and "opacity" keywords.</li>
<li> Properly handle interlaced GIF images with less than 8 rows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23812).</li>
<li> Ensure image colorspace is sRGB when writing WebP format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=23841).</li>
<li> Avoid deadlock with logging subsystem (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=23849).</li>
<li> Compare exits with a non-zero exit code when no error (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23722).</li>
<li> Correct calculation of quantization error (reference https://imagemagick.org/discourse-server//viewtopic.html?t=23734).</li>
<li> Correct quantize tree walking mistake for RiemersmaDither (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=23735).</li>
<li> Added combineImages, evaluateImages, mergeImageLayers, optimizeImageLayers optimizePlusImageLayers and separateImages to STL.h (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=23699).</li>
<li> Added support for the fill area flag ('^') and the pixel area count limit flag ('@') to the Geometry class of Magick++ (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=23704).</li>
<li> Enabled automatic linking for static Magick++ in Visual Studio (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=23558).</li>
<li> Thumb property need Height, not height (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23661).</li>
<li> White pixels previously were written as black for the CIP format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23677).</li>
<li> Rec709Luma is sRGB compatible (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23693).</li>
<li> Colorspace RGB is linear, gamma is 1.0 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23708).</li>
<li> Improve HCL to RGB roundtrip (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22384).</li>
<li> Prefer external log configuration file to built-in (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23640).</li>
<li> Do not log in the IsLinkedListEmpty() method to prevent overflow (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23640).</li>
<li> Color profiles are no longer corrupted for the JPEG format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23651).</li>
<li> Repair problem with -emboss / -equalize problem (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23643).</li>
<li> Clone image->intensity in CloneImageProperties() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23569).</li>
<li> Split test suite into smaller tests (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23577).</li>
<li> Undercolor rectangle was off by one pixel (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23574).</li>
<li> Don't msync() for a read-only memory-mapped mode (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23531).</li>
<li> BlurChannelImage() no longer faults for certain CMYK images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23581).</li>
<li> Reduce memory requirements for large BMP images.</li>
<li> Caption no longer clips long words (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23504).</li>
<li> The lightness intensity is (min(R',G',B')+max(R',G',B'))/2.0 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23517).</li>
<li> The -white-threshold option is symmetrical with -black-threshold (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23441);</li>
<li> The -format option should not automatically append a newline since the user can specify a newline in the formatting expression.</li>
<li> The -level option is no longer returning a darkened image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23479).</li>
<li> Identify SVG image as "SVG" (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=27654).</li>
<li> Recognize PNG iCCP chunks that contain the sRGB profile and replace them with the PNG sRGB chunk. Use "-define png:preserve-iCCP" to get the previous behavior, of simply copying the iCCP chunk.</li>
<li> Sometimes an sRGB image is masquerading as grayscale (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23370).</li>
<li> Labels no longer overflow (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22964).</li>
<li> If more then one exception, return the highest security exception.</li>
<li> A grayscale image returns a color JPEG for -type TrueColor (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=23421).</li>
<li> The stream utility no longer faults when exporting float pixels (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23394).</li>
<li> The -poly option treats the opacity channel as alpha (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23346).</li>
<li> The -threshold 50% option returns a 50-50 black and white image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23354).</li>
<li> Let user override the TIFF rows per strip (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=23307).</li>
<li> Fix transient bug in the -separate option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23335).</li>
<li> Don't modify channel values for -separate (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23193).</li>
<li> The -adaptive-sharpen option is now sharpening properly (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23211).</li>
<li> Sometimes an image says it's grayscale when it's not (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23217).</li>
<li> Use malloc() to allocate X image data (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23221).</li>
<li> If there are more components than quantization tables, the last table is replicated.</li>
<li> Removed the ICC profile from the logo: image definition in coders/magick.c; libpng16 detected that it was a broken sRGB profile.</li>
<li> Negatives raised to a non-integer power returns NaN's (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23234).</li>
<li> Ensure -define jpeg:extent is restricted to at most 7 iterations (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23179).</li>
<li> Move X11 font support from annotate.c source module to xwindow.c.</li>
<li> Do not write zero-length TIFF tags (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22957).</li>
<li> Math library should be private for *.pc.in configuration files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=22986).</li>
<li> Do not split words for caption (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=17123).</li>
<li> Modify the configure script check for the webp delegate library (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=23025).</li>
<li> The -blur, -gaussian-blur, and -sharpen are now convenience methods for -morphology convolve.</li>
<li> Fix infinite loop for 'display -window' (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23028).</li>
<li> Revert -auto-level patch to match the results of ImageMagick 6.8.3-4.</li>
<li> Revert g_type_init() patch in svg.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=23035).</li>
<li> GIF comments are no longer displaced by 1 for animated GIFs (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22901).</li>
<li> A blur kernel with a zero sigma is unity.</li>
<li> Export versioning to automake in order to use it for library prefix.</li>
<li> So bump was incomplete due to no changing map file.</li>
<li> Change abi name by adding major version to lib name (will simplify next imagemagick major version release work) and reset release version to 1 (due to changing abi name).</li>
<li> Deleted some code added to the PNG decoder in SVN revision 10825; it was failing to handle transparency in paletted images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22720).</li>
<li> Compare alpha to "QuantumRange-OpaqueOpacity" not just "OpaqueOpacity" when detecting transparency in the PNG encoder.</li>
<li> Fixed LBR01 (left-bit-replication) macro in coders/png.c; problem reported by the clang compiler.</li>
<li> Chromaticity values were read in the wrong order in the cHRM chunk when it accompanied the sRGB chunk. Libpng applications built with libpng16 and later will detect this and issue a warning (PNG files previously written with the cHRM chunk are OK). Removed the troublesome redundant png_set_cHRM() and png_set_sRGB() calls.</li>
<li> Look for libpng17 and libpng16 while configuring PNG support.</li>
<li> Correction to scientific notation for the -evaluate log option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=22496).</li>
<li> Support scientific notation for the -evaluate log option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=22496).</li>
<li> Magickcore headers recently used pow() in the inline functions inside public headers. Thus in order to avoid library depends problem, put -lm in library depends (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22483).</li>
<li> Improve exception reporting when AcquireAuthenticCacheView() fails.</li>
<dt>2012-12-13 6.8.0-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Minor tweeks and commenting of Virtual Pixel shortcuts in resampling filters.</li>
<li> Added -define "shepards:power" to control the power setting (def=2) for Shepards Method in -distort and -sparse-color https://imagemagick.org/discourse-server//viewtopic.html?t=22416</li>
<li> Fixed problem with writing grayscale PNG, bug introduced in version 6.8.0-0 or 6.8.0-1 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22355).</li>
<li> Implement symbol versioning (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22352).</li>
<li> ABI is incompatible if quantum depth change. Add abi indication to library name, thanks to Bastien Roucaries (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22352).</li>
<li> The stream utility no longer returns a black image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22046).</li>
<li> Fixed an old bug in chromaticity decoding in coders/bmp.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22294).</li>
<li> Fixed bug in coders/bmp.c that failed to read a paletted image properly (fix by J. Summers, reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22316).</li>
<li> Fixed bug in coders/bmp.c that failed to read transparency properly (fix by J. Summers, reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=22312).</li>
<li> Fix memory leak in JPEG decoder when reading a corrupt image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21948).</li>
<li> Add exif:thumbnail namespace to distiguish orientation tag (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21938).</li>
<li> Respect DPX data offsets (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21960).</li>
<li> jpeg:sampling-factor might be an image property or an option (reference<dt>https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=21884).</dt>
<dt>2012-09-12 6.7.9-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
<li> Merge static inline Sigmoidal functions from IM7 to IM6.</li>
<dt>2012-09-12 6.7.8-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> All untapered windowing filters Welch and Cosine changed to use a 3 lobe support (like Lanczos). These were not part of the original 'zoom' program.</li>
<dt>2012-09-11 6.7.9-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
<li> sigmoidal-contrast: prevent out of range argument.</li>
<li> The number of default OpenMP threads is 1 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=23&t=21838).</li>
<li> Only first image of raw grayscale image was set to GRAY (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21428).</li>
<li> Change sigmoidal-contrast define to inline method to conform with ANSI-C requirements.</li>
<dt>2012-09-10 6.7.9-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
<li> enhance.c improvements:</li>
<li> Add tanh/atanh clone of legacy sigmoidal map (faster & more accurate);</li>
<li> Add final ClampToQuantum in sigmoidal colormap loop;</li>
<li> Remove OpenMP for threads that do not loop over rows;</li>
<li> Immediate no-op exit from sigmoidal-contrast if contrast<MagickEpsilon.</li>
<li> Support -channel sync option for -equalize (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21746).</li>
<li> Don't remove color profile when setting the image colorspace (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21747).</li>
<li> Recognize ICO format in URL (e.g. http://www.google.com/favicon.ico).</li>
<li> Don't define HAVE_BOOLEAN for JPEG under MinGW (reference https://imagemagick.org/discourse-server//viewtopic.html?t=14071).</li>
<li> Selective blur stopped working after version 6.7.4-10 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21604).</li>
<li> Color reduction now handles transparent pixel properly (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18463).</li>
<li> ClipImagePath() now returns a valid SVG XML for Windows x64 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21617).</li>
<li> Transform grayscale to linear RGB if fill color is non-gray (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21586).</li>
<li> Set DICOM grayscale images to the gray colorspace.</li>
<li> Missing grestore from ps3.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20445).</li>
<li> Use GetMagickResourceLimit(ThreadResource) to set the # threads (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21543).</li>
<li> Only report sRGB, iCCP, gAMA, cHRM chunks in "identify" output when these chunks were actually present in input, and not when they were inserted by the PNG decoder.</li>
<li> Attenuate random noise (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21387).</li>
<li> Return linear grayscale for gradient:white-black.</li>
<li> Promote linear grayscale to linear RGB when compositing.</li>
<li> gradient:white-black is sRGB whereas gradient:'icc-color(rgb,255,255,255)- icc-color(rgb,0,0,0)' is linear RGB whereas gradient:'gray(255)-gray(0)' is linear grayscale.</li>
<li> Set the colorspace to linear gray when reading intensity values (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21362).</li>
<li> Don't overrun pixel buffer on inverse fourier for odd image widths.</li>
<li> Change LAB encoding to permit blurring, resize, etc. (signed A and B channel values now stored using a 50% bias)</li>
Additional.. This removes a non-linear discontinuity from stored LAB space values. As a result you can now Blur, Compose, Resize and Distort in LAB colorspace, without problems that previously existed.</li>
<li> A single argument -stereo option now works as documented (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21348).</li>
<li> The -separate option returns channels as linear grayscale.</li>
<li> Remove the sRGB color profile when converting to grayscale (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=21355).</li>
<li> Don't attempt to use Z_RLE compression strategy with old zlib (prior to zlib-1.2.0) that does not support it.</li>
<li> Increase PLTE chunk length to accommodate background color in indexed PNG (reference imagemagick.org/discourse-server/viewtopic.html?f=1&t=21288).</li>
<li> Added png:PLTE.number_colors to verbose output.</li>
<li> Support the -features option in convert / mogrify.</li>
<li> Add support for the %[type] property.</li>
<dt>2012-06-15 6.7.7-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Geometry arguments accept multiple sign character for offsets EG: "-10-10", "-+10-+10", or "+-10+-10" generate negative offsets while "+10+10", "++10++10", or "--10--10" generate positive offsets, that is, you can not only optionally have a sign in offset variable substitutions, but can negate that substitution if you so desire.</li>
<dt>2012-06-12 6.7.7-8 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
<li> Refactor Catmull-Rom and Spline "interpolation" using state-of-the-art unpublished formulas.</li>
<li> Fix incorrect transparency handling of "interpolative" cubic B-spline smoothing.</li>
<li> Disabled the new libpng-1.5.10 test for invalid palette index when reading a PNG or MNG (for speed), or when writing a MNG (because a zero-length PLTE is valid in a MNG when the global PLTE is used).</li>
<li> Display the PNG colortype as a string in "identify -verbose" output.</li>
<dt>2012-06-06 6.7.7-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Small refactor of Average Interpolators (save some multiplies)</li>
<li> Added 'Spline' as a filter type as an alias to 'Cubic'. This brings both Catrom and Spline -filter and -interpolate methods in line. Cubic should only be used when defining a general cubic using expert settings or when listed in "filter:verbose" debugging output.</li>
<dt>2012-06-05 6.7.7-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Renamed 'Bicubic' interpolation the more precise definition 'Catrom' Old name kept (but hidden) for backward compatibility in bit CLI and API interfaces.</li>
<li> The -set colorspace option sets the colorspace, it does not transform it.</li>
<li> Assume grayscale images in the GIF format are linear.</li>
<li> Add Nicolas Robidoux's bicubic interpolation method (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=21118). This replaces the old 'bicubic' which was very extreme 'cardinal' cubic.</li>
<li> Add DuPont & XFIG copyright to NOTICE.</li>
<li> sRGB.icc has an unfriendly license, remove it.</li>
<li> MinGW does not define KEY_WOW64_32KEY (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=21155).</li>
<li> Fix bug with stroke-dasharray (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21090).</li>
<li> In rare cases, caption would not word-wrap properly (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21106).</li>
<li> Don't set alpha pixels in SetImageVirtualPixelMethod() unless image area is well defined (i.e. != 0) (reference https://imagemagick.org/discourse-server//viewtopic.html?t=21110).</li>
<dt>2012-05-27 6.7.7-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Trialing the addition of new interpolation methods Average16 average of 16 pixels around sampling point Average9 9 pixels around nearest pixel Average4 Average of 4 pixels around sampling point Background Background color (for resampling error checking) Blend Blend of closest 1, 2 or 4 pixel neighbors NOTE: 'Average' is now equivalent to 'Average4', previous to this version it was equivalent to 'Average16'. The 'Background' method is for showing 'resample errors' be it accidental, or on purpose. See IM Examples, Cylindrical Filters.</li>
<li> added -interpolative-resize added around this version</li>
<li> In rare cases, caption would not word-wrap properly (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21044).</li>
<li> Set the JPEG image colorspace after the columns / rows are set (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21059).</li>
<li> Potential gray images are in either the gray or RGB colorspaces.</li>
<li> Group4-compressed TIFF / PDF image formats stopped working (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=21039).</li>
<li> Auto convert images in the grayscale colorspace to sRGB (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=21031).</li>
<li> Reset color info in grayscale PNG images to gamma=1.0, undefined rendering_intent and chromaticity only when reading images that don't have a gAMA, sRGB, or cHRM chunk.</li>
<dt>2012-05-14 6.7.6-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added a low level "Cosine" Windowing Filter -- Request by Nicholas Robidox</li>
<li> Fixed Kaiser Window Filter (was producing all zeros!)</li>
<li> Kaiser Window Function now uses the working value "filter:kaiser-beta" (formerly "filter:alpha" in previous versions)</li>
<li> Setting the expert option "filter:kaiser-alpha" will override this, (after being multiplied by PI).</li>
<li> Added resampling 'weight' sanity check in EWA resampling.</li>
<li> Set default for histogram:unique-colors to be 'true' when undefined Returning it to previous behavior.</li>
<li> Refactor of InterpretImageProperties() (percent escape substitutions)</li>
<li> Add "gamma" as a -set and % escape to access image gamma meta-data</li>
<li> EXR images are in the linear RGB colorspace with a gamma of 1.0 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=20895).</li>
<li> Correct annotation offset for right-to-left labels (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20884).</li>
<li> The -level 100x0% now produces the equivalent of -negate (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20889).</li>
<li> Virtual pixel transparent no longer cause fatal exception (reference https://imagemagick.org/discourse-server//viewtopic.html?t=20903).</li>
<li> Promote gray image to sRGB when color is injected.</li>
<dt>2012-04-25 6.7.6-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Gaussian Filter Fixed. For some strange reason it was half the width it should be with an effective sigma of 0.25 (not 0.5). This was the real reason "variable blur" was not blurring enough.</li>
<dt>2012-04-21 6.7.6-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Error when doing an implicit (final) write to a single space filename. This is typically a failed line continuation and is very common. Using an explicit "-write" will let you do this.</li>
<dt>2012-04-20 6.7.6-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Always unlock the semaphore before returning from the png codec, either by a "return" or png_error(); changed all Magick*Exception() calls after setjmp() to png_error() to ensure proper cleanup (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16883).</li>
<dt>2012-04-10 6.7.6-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Fixed log known alpha*kernel normalization bug in morphology convolve.</li>
Convolve kernel weights have been separated from alpha blend handling. Un-normalized kernels applied to images with active alpha will no longer be auto-normalized due to the effect of alpha blending. The bug causes images using the default channel setting and having an alpha channel to automatically 'normalize' the results of a convolve during the handling of alpha blending. This probably would cause severe effects when a zero-summing kernel is being used on an image containing an active (though likely fully-opaque) alpha channel, as division by near zero weights would cause extreme color values in results. This bug is not normally seen as convolution, which is normally applied only to fully-opaque images. And using a zero-summing kernel on an image with alpha also results in a transparent image! This is why it was not fixed up until now.</li>
<li> Reduce the scope of quantum_info in the PNG decoder to avoid a possible memory leak (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20522).</li>
<li> Use uint32 pointer for ReadStripMethod in coders/tiff.c (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20526).</li>
<li> Ghostscript 32/64 bit detection patch (contributed by axeld@pinc-...).</li>
<li> Honor center gravity for caption: with Pango support (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20517).</li>
<li> Add support for pango: coder to render captions with Pango.</li>
<li> Importing from the X11 root windows no longer leaks memory (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20470).</li>
<li> Check to see if delegate file exists before copying.</li>
<li> non-verbose identify now reports DirectClass for transparent PNG images to agree with the report by identify -verbose. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20448 and https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=15482).</li>
<li> Add support for the EMFPlus delegate program.</li>
<dt>2012-02-22 6.7.5-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Re-added the Iterative Distance function in morphology (as opposed to the faster more direct 2-pass Distance Function that replaced it) so it can be used in the special situation of Constrained Distance Morphology. https://imagemagick.org/discourse-server//viewtopic.html??f=2&t=18032</li>
<li> Support the -alpha remove option (use it to remove transparency from PDF, convert -density 200 apple.pdf -alpha remove x:).</li>
<li> Use union instead of casting gzFile and BZFILE.</li>
<li> Don't treat PSD user channel as alpha (patch from Dominic Benson).</li>
<li> Prevent overflow when casting short int to size_t when parsing a maliciously crafted image with an IFD whose all IOP tags' value offsets point to the beginning of the IFD itself [CVE-2012-0247].</li>
<li> Prevent DES when parsing a maliciously crafted image with an IFD whose all IOP tags' value offsets point to the beginning of the IFD itself [CVE-2012-0248].</li>
<li> Caption with Pango support no longer return a blank canvas.</li>
<li> Fixed -black-threshold and -white-threshold so they work properly with the -channels option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20096).</li>
<li> Removed PNG_USE_CLONE cruft from the PNG encoder (see 2011-11-19 entry)</li>
<li> Promote image depths 9-15 to 16 to avoid crashing in the PNG encoder (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20098).</li>
<li> Read concatenated arcs correctly in a SVG path (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19992).</li>
<li> PDF's now convert properly with -define pdf:use-cropbox=true (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=20033).</li>
<li> Add GetQuantumFormat() method to return the quantum format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=19961).</li>
<li> Allow unspecified width/height in geometries with the aspect flag (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19964).</li>
<li> MagickGetImageDepth() no longer returns the depth setting but instead computes the depth of the image.</li>
<dt>2011-12-02 6.7.4-0 Anthony <quetzlzacatenango@image...></dt>
<li> Fixed Equal-Area Cropping (size and minimum of delta increments)</li>
<li> Ensure that the GIF encoder writes a large enough logical screen (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19734).</li>
<li> Fix small memory leak in the TIFF coder.</li>
<li> Support -debug accelerate option.</li>
<li> Support -includearch-dir and -sharearch-dir configure option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19720).</li>
<li> Add "png:format" property with possible values png8, png24, and png32, for use when prepending the format type to the filename is not convenient or is not possible, e.g., when embedding the PNG in a PNG-encoded ICO.</li>
<li> Prevent infinite loop when font is too large for specified width (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19502).</li>
<li> Fix LFS cross-compile detection (patch from Mike Frysinger).</li>
<li> Add open_utf8(), fopen_utf8(), access_utf8(), etc. utility methods.</li>
<li> A small memory overwrite when reading TIFF with 1-bit alpha (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19417).</li>
<li> Remove a 2 byte memory leak when checking for environment variables.</li>
<li> Write grayscale MIFF as a single gray pixel component, not RGB (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=19403).</li>
<li> Bail gracefully for corrupt JPEG images.</li>
<li> Bail gracefully for negative montage geometries (references https://bugzilla.redhat.com/show_bug.cgi?id=735599).</li>
<li> Account for DCm bits allocated 16 and significant bits 12 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19420).</li>
<li> Fix bug when appending JPEG image profiles (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=19429).</li>
<li> Revised configure.ac (and configure) to look for -lpng15, -lpng14, -lpng12, and -lpng in that order instead of just -lpng. This should help find a consistent library and headers when users upgrade their libpng delegate from one version to another, incompatible version.</li>
<li> The "-strip" option was excluding the PNG tRNS chunk (see 6.6.6-7, below); revised the -strip option so it behaves as if "-define PNG:include-chunk=none,trns,gama" had appeared on the commandline.</li>
<li> When writing a PNG8 and more than one transparent color is present, merge them into the image->background_color (Reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=19329), finishing the implementation started in version 6.6.8-7.</li>
<li> The PNG encoder would sometimes fail to respect the -define PNG:color-type option when the incoming image was PseudoClass (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=19262).</li>
<li> Use zlib default compression strategy instead of Z_RLE and Z_FIXED strategies when linking with zlib versions (prior to 1.2.0 and 1.2.2.2, respectively) that don't support them.</li>
<li> Exit test loop sooner in coders/png.c when a non-gray pixel is found.</li>
<li> Added "-define PNG:compression-level|strategy|filter=value" options to the PNG encoder. If these options are used, they take precedence over the -quality option (reference https://imagemagick.org/discourse-server//viewtopic.html?&f=1&p=73548).</li>
<li> Handle "-quality 97" properly in the png encoder, i.e., use intrapixel filtering when writing a MNG file and no filtering when writing a PNG file.</li>
<li> Added support for Z_RLE strategy in the png compressor, using -quality 98 or 99.</li>
<li> Properly allocate points when render text with large font size (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18997).</li>
<dt>2011-06-14 6.7.0-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added Initial implementation of Cylinder to/from Plane 3D Distorts Includes derivative (scaled lookup), and anti-aliased horizon (validity) Currently can NOT handle extractions from full 360 cylinder panoramas.</li>
<li> The PNG encoder would sometimes make black pixels transparent when some other gray level was supposed to be the transparent color (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18900). This occurred only with 1, 2, 4-bit grayscale images with Q16 or Q32 builds.</li>
<li> The PNG encoder now respects the -depth setting, including 1, 2, 4. Previously settings other than 8 and 16 were ignored (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18412).</li>
<li> Fixed some cut-and-paste errors in new png.c code that caused PNG8 reductions to fail.</li>
<dt>2011-05-02 6.6.9-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Add various Option Flags, and fix option skip counts for plus forms of simple operators where plus form is the same as minus form. For example the incorrect counts produces a weird error, and possible future segmentation fault in a command like convert rose: +border show:</li>
<li> Write the proper bKGD chunk value in grayscale PNG images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18624).</li>
<dt>2011-04-25 6.6.9-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added Inverse method for Sparse Color Interpolation</li>
<dt>2011-04-21 6.6.9-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Make filter:blur define a multiplicative adjustment of filter settings rather than a complete override of those settings.</li>
<li> Add Flags to CommandOptions parse table, removing the need for ImageListOptions parsing table. This is the start of development to produce a "convert" replacement that can read options from both command line and from files or pipelines, in "Do it Immediately" handling.</li>
<li> Added "date" to the things that can appear on the -define PNG:exclude-chunk list. This excludes the IM-generated Date:modify and Date:create properties from PNG output text chunks without excluding the rest of the text chunks.</li>
<li> Added "#define PNG_PTR_NORETURN" because this macro does not work on all platforms with libpng15, with failure to load png_longjmp() (ref https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18518).</li>
<dt>2011-04-14 6.6.9-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Layers Composition Bug Fix, animations attributes of first image not transferred in a single destination, multi-source image composition.</li>
<dt>2011-04-09 6.6.9-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Add a special 'Voronoi' Morphology Distance method that will fill in holes using the nearest non-transparent edge pixel. It is experimental, and hidden from normal morphology usage, as it may be interfaced with a future hole-filling color 'Diffusion' method.</li>
<li> MIFF keywords sometimes includes spaces.</li>
<dt>2011-04-07 6.6.9-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Major BUG FIX - wrong sign breaks most morphology methods in IM v6.6.9-4</li>
<li> Fixed -region handling of transparency. Original images without transparency will use 'Over' while images with transparency will preserve transparency using 'Copy'. Before this only 'Over' was used due to the testing of the wrong image.</li>
<li> Added Compose methods DarkenIntensity and LightenIntensity</li>
<li> Make the PNG encoder use depth==8 when incoming image->depth < 8 (the encoder later reduces the depth if it can), to avoid writing an incorrect image.</li>
<li> Remove any bogus colormap received by the PNG encoder with an image that is not PseudoClass (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18475).</li>
<li> Set the caption height correctly for missing row geometry (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18447).</li>
<li> Revised the png decoder to store the PNG IHDR and other known PNG chunk data as properties, for later retrieval and reporting by "identify", so users can easily and reliably discover the color-type, bit-depth, etc that were in the input PNG datastream.</li>
<li> The PNG decoder sometimes set images with more than 256 different gray-alpha pixels to storage_class=PseudoClass with an incorrect colormap.</li>
<dt>2011-03-30 6.6.9-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Add a "Resize" distortion method (distort equivalent of -resize).</li>
<li> Special CLI handling so -distort Resize takes a "geometry" argument.</li>
<li> Remove version from etc folder and instead use /etc/ImageMagick.</li>
<dt>2011-03-28 6.6.9-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Separated complex cropping function from TransformImage() as a new function CropImageToTiles(). This new function returns either the new cropped image, or a list of tiles, according to geometry, without replacing the source image. The Source image may be part of a larger list of images, without the function 'losing' the other images of the list.</li>
<dt>2011-03-27 6.6.8-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Modified image handling in MogrifyImages() and MogrifyImage() which improves overall handling, and allows correct %p, %n and the %[fx:..] 't' and 'n' escape usage to work correctly.</li>
<li> Added -duplicate as a multi-image sequence operator</li>
<li> Revised the PNG8 encoder to use 50% threshold instead of 0% when reducing transparency to binary. Collapse all resulting fully transparent colors into one (the background color), to reduce the compressed filesize.</li>
<li> First try the 4-4-4-1 and 3-3-3-1 palettes instead of 3-3-2-1, to preserve colors (especially gray) better, when reducing to PNG8.</li>
<li> Force the PNG encoder to return image->matte==MagickTrue when the format is RGBA or GA or if the tRNS chunk is present, even when the image is fully opaque (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18349).</li>
<li> Re-enabled reduction of grayscale images (color-type 0) to 2 or 4 bits when appropriate (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18098).</li>
<li> The "-define PNG:color-type=4" option did not always force the PNG encoder to write an all-opaque alpha channel (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18349).</li>
<li> Fixed memory leak for PDF and Bitmap PSD RLE support (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18317).</li>
<li> Support the -statistic option: replace each pixel with corresponding statistic from the neighborhood.</li>
<li> Add support for -duplicate option.</li>
<li> Move configuration files from /usr/share and /usr/lib to /etc and /var.</li>
<li> Do not cache the results of fx: otherwise -format '%[fx:rand()] %[fx:rand()]' returns the same random numbers.</li>
<dt>2011-03-18 6.6.8-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Replaced Minus and Divide Composition methods with Dst and Src equivalents. Now users can decide how these non-commutative mathematical operators are applied to the images being composited.</li>
<li> Fix the percent escape values for %p, %n and %[fx:t], %[fx:n] to respectively mean the current images index and the total number of images within the current image sequence.</li>
<dt>2011-03-17 6.6.8-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Backed out the patch for Variable Blur Composition that was added 2011-02-13 v6.6.7-7, until I can re-think the problem. The existing fix was failing to do circular blurs correctly.</li>
<li> Fixed a rounding/truncation error while writing the pHYs chunk in the png encoder.</li>
<li> Don't write text-encoded profile when "-define PNG:exclude-chunk=text,ztxt" is present (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17086 and https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18225).</li>
<li> Don't try to store a bKGD chunk in a PNG8 when there are already 256 colors in the palette and the background colors is not in that palette (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18199);</li>
<li> The "-define PNG:exclude-chunk=bKGD" option was also excluding the text chunks. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18253).</li>
<li> Fx is a mathematical function. Do not treat transparency as black.</li>
<li> No image scene suffix for filenames that include a single bracket (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18267).</li>
<li> Throw error message when the requested color-type or bit-depth cannot be written by the PNG encoder (error was being thrown into the wrong image structure). (Reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18162).</li>
<li> Don't write a PNG text chunk with "density" keyword that overrides the PNG pHYs chunk, if the pHYs chunk was not excluded (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18253).</li>
<li> Ignore any PNG text chunk with a "density" keyword found by the PNG decoder, if the PNG datastream also contains a pHYs chunk.</li>
<li> Fix scaling of new color-reduction method in the PNG encoder (16-bit images were scaled down to 0 or 1, or nearly black).</li>
<li> Delay opening the PNG output blob until the PNG encoder is ready to write the IHDR chunk, to avoid writing zero-length PNG files when errors are found while building the palette. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18162).</li>
<li> Avoid seg fault in AppendImages() when one image is in the RGB colorspace but the other is in the CMYK colorspace.</li>
<li> Get rid of 'respect_parenthesis defined but not used' warnings (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=18173).</li>
<li> Write sub-8-bit grayscale PNG images as palette-indexed PNG images. This usually makes smaller files anyhow.</li>
<li> Eliminated a number of redundant tests for gray images in the PNG encoder.</li>
<li> Removed now-unused IsMonochromeImage() function from coders/png.c</li>
<li> Scan the colormap instead of all of the pixels, when possible, to determine whether the image received by the PNG encoder is grayscale or black-and-white.</li>
<li> Avoid reading from the colormap in coders/png.c when it is NULL (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18162).</li>
<li> Add a check whether the PNG "cheap transparency" criteria are met. That is, there is a single transparent color, no semitransparent colors, and no opaque color that has the same RGB components as the transparent color. If those aren't met, a color that is transparent in one pixel and opaque in another would always be rendered as transparent, so we must write a PNG colortype that has an alpha channel (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18167).</li>
<li> Disabled reduction of grayscale images (color-type 0) to less than 8 bits when writing because this sometimes produced incorrect output (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18098).</li>
<li> Check image has properties before accessing the splay tree (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18136).</li>
<li> The PNG encoder should ignore bogus q->opacity values when image->matte is MagickFalse (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18067).</li>
<li> Fix bug in carg() define when HAVE_COMPLEX is not defined (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=18030).</li>
<dt>2011-02-06 6.6.7-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Default sigma for Gauusian resize filter is now 1/2 for both orthogonal resize and cylindrical EWA distortions.</li>
<li> Check if the font is null in RenderFreetype() to prevent fault (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17890).</li>
<li> Eliminate fault when reading WMF image files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=17971).</li>
<li> Support multi-page transparent Postscript and PDF image files.</li>
<li> The compare fuzz metric now returns the same correct value for 'xc:white xc:blue -alpha off' and 'xc:white xc:blue -alpha on'.</li>
<dt>2011-01-29 6.6.7-4 Paul Heckbert <ph@cs.cm...></dt>
<li> Move coders/tiff.c conditional compile to define TIFF exception / semaphore / key when TIFF delegate is disabled.</li>
<li> Renamed variables, macros, and functions defined/declared in coders/png.c that were in the libpng namespace (beginning with "png_" or "PNG_").</li>
<li> Removed a call to GetNumberColors() from the PNG encoder that was only there for debugging purposes and was consuming a huge amount of CPU time. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=17799).</li>
<li> Sometimes black was still written as transparent, when the PNG encoder received an image with image->matte==true but no transparent pixels were present. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17913);</li>
<li> Changed the PNG encoder's "transparent_color" from a UShortPixelPacket to LongPixelPacket and made the default (65537,65537,65537), which can never occur in the PNG image data. Previously the default was (0,0,0) and black pixels would be rendered as as transparent when no tRNS chunk was present in the input, which has caused problems with some test cases since version 6.6.6-10.</li>
<li> Improved the PNG_BUILD_PALETTE section to count opaque, transparent, and semitransparent pixels separately. Previously it wasn't always possible to determine if there was a single fully-transparent color, to decide whether to write an RGBA or Gray-Alpha image or an RGB or Gray image with a tRNS chunk.</li>
<li> Don't let the PNG encoder try to sort the colormap when there are more than 256 colors in the image. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17834).</li>
<li> Quieted some inconsequential warnings in the PNG codec due to a change in the type of the PNG iCCP profile from png_charp to png_bytep in libpng-1.5.0.</li>
<li> Recent changes sometimes caused the PNG encoder to select colortype=2 (Truecolor) instead of 0 (Grayscale) for grayscale images. This made the filesize larger than necessary and caused some of the PerlMagick tests to fail.</li>
<li> The PNG decoder now checks whether the image actually has any transparency when the input file contains an alpha channel or a tRNS chunk. (Reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17748)</li>
<li> Use a clone instead of the main image in coders/png.c, so the image can still be used later on without being affected by changes made by the PNG encoder.</li>
<li> Added PNG:exclude-chunk and PNG:include-chunk defines.</li>
<li> Revised the -strip option so it behaves as though "-define PNG:include-chunk=none,gama" had appeared on the commandline.</li>
<li> Avoid writing PNG ancillary chunks in the PNG/MNG/JNG encoder while generating the alpha channel for a JNG image.</li>
<dt>2010-12-21 6.6.6-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Removed the forced interpolation setting in AcquireResampleFilterThreadSet It prevented user defined interpolation settings for -clut, and possibly other usage.</li>
<dt>2010-12-17 6.6.6-6 Chris Madison <madisonblu@gmail...></dt>
<li> Add LZMA compression support to ImageMagick.</li>
<li> Make the PNG encoder always rebuild the palette, to avoid losing transparency when it is out of sync with the pixel data (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17655).</li>
<li> Eliminated CompressColormapTransFirst() since the palette is already compressed and sorted by opacity now when it's recreated.</li>
<li> Account for virtual canvas for the -flip / -flop options (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=17626).</li>
<li> Also for -transpose and transverse options</li>
<li> Support -metric fuzz option.</li>
<dt>2010-12-09 6.6.6-4 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Replace IsMagickColorSimilar() which provides the Fuzz Factor threshold function. Note function does not calculate 'distance' in total but short-circuits when threshold is reached for faster processing.</li>
<li> Ordered Dithered handling of Alpha channel was incorrect - fixing Bug was introduced v6.6.5-6</li>
<li> Fixed two more cases where the PNG encoder lost transparency (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17516).</li>
<li> Fixed two more cases where the PNG encoder lost transparency (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17516).</li>
<li> Many of the problems with the PNG encoder have been fixed (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16490).</li>
<li> The "-type Optimize" option is now deprecated. If present, it is treated by the PNG encoder the same as if the type were undefined. Optimization is now always performed. No other formats used the "type Optimize" option.</li>
<li> Merged redundant code into LosslessReduceDepth() function in the PNG codec.</li>
<li> The splice option no longer throws spurious "pixels are not authentic" exceptions.</li>
<li> Thread the -adaptive-resize option.</li>
<li> Set XBM coder height to height not width.</li>
<dt>2010-11-14 6.6.5-9 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
<li> Lanczos2Sharp blur tweaked. New blur = 0.9549963639785485.</li>
<dt>2010-11-13 6.6.5-9 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
<li> LanczosSharp blur tweaked to minimize worst case deviation from "perfect preservation of images which only vary horizontally (or vertically)" under no-op. New blur = 0.9812505644269356.</li>
<dt>2010-11-08 6.6.5-8 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
<li> Only save TIFF image with 1-bit depth if there is no alpha channel.</li>
<li> Abandon PSD composite if layer is available.</li>
<li> %[fx:mean] is the mean of the default channels (all but opacity) (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=17432).</li>
<li> Ignore PS bounding box offsets if -page is set.</li>
<li> Use #pragma omp master for dumping single threaded debugging information (single caused a fault).</li>
<li> Add support for -evaluate exp.</li>
<dt>2010-10-12 6.6.5-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added "filter:sigma" expert setting defining the 'sigma' for the Gaussian filter only. This is similar in action to 'blur' but only for Gaussians, and does not modify the filters support, allowing you to set a very small sigma, without the function 'missing' all pixels. (This will allow future adjustment of Gaussians for variable blur mapping)</li>
<li> Patch for DrawableRotation() and DrawableTranslation() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17246).</li>
<li> The webp format requires the webpconv delegate program (experimental).</li>
<dt>2010-10-05 6.6.5-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Replaced "Robidoux" with Cubic 'Keys' filter that is near equivalent to the previous sharped "Lanczos2D" filter. (C=0.31089212245300069) This also is very similar to a Mitchell filter but specifically designed for EWA use and is the new default filter for Distorting Images.</li>
<li> Original sharpened Lanczos2D filter now called "Lanczos2Dsharp"</li>
<dt>2010-10-08 6.6.4-10 Jerry Gay <jerry.gay@gmail..></dt>
<li> Autodetect file type support in Makefile.PL to prevent test failures</li>
<dt>2010-10-05 6.6.4-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added new filter 'Lanczos2D' a 2-lobe Lanczos as defined by Andreas Gustafsson in his thesis "Interactive Image Warping" (page 24) http://www.gson.org/thesis/warping-thesis.pdf</li>
<li> Added filter "Robidoux" which is a slightly sharpened version of the "Lanczos2D" filter (blur=0.958033808) specifically designed to be less 'blurry' for horizontal and vertical lines in no-op distortions.</li>
<li> Fix memory assertion with --enable-embeddable (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17201).</li>
<li> Don't permit access to pixels when pinging an image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=17194).</li>
<dt>2010-10-02 6.6.4-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added sqrt(2) blurring default for Gaussian Filter if used as a Cylindrical EWA filter. This resulted removing the last aliasing issue that was present in tests for Gaussian EWA resampling. Of course it is still a very blurry filter for default use in EWA.</li>
<li> Adjusted Variable Mapping Blur Composition so user arguments actual relate properly to the sigma of the blur for a maximum mapping value.</li>
<li> Fix horizon anti-aliasing for output-scaled perspective distortions.</li>
<li> 'Bessel' filter is now officially and more accurately named 'Jinc' however 'Bessel' while not visible as a filter option can still be used as an internal alias for 'Jinc'.</li>
<dt>2010-09-28 6.6.4-8 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
<li> Chantal Racette double checked the bounding parallelogram computation in resample.c (and I tightened the comments).</li>
<li> Temporary files not always deleted (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=15960).</li>
<dt>2010-09-28 6.6.4-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Bug fix for -filter point distorts (occasional generating black pixels)</li>
<dt>2010-09-27 6.6.4-8 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
<li> Simplified the ClampUpAxes code, the use of its outputs, its comments, and credited Craig DeForest for the "clamp singular values" idea.</li>
<li> No reason to have "insane" precision Sinc in resize.c: Use the 1.2e-12 max. abs. relative error version for Q64 as well as Q32.</li>
<dt>2010-09-27 6.6.4-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Replace the blurry "High Quality EWA" technique with a 'Clamped EWA' for Distort Resampling. This makes -distort a whole lot nicer and allows for the use of better cylindrical filters.</li>
<dt>2010-09-26 6.6.4-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Fix Point filter for ResizeImage() caused by support limiting the Box weighting function.</li>
<li> Do not break words if caption size is absolute (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=17123).</li>
<li> Don't define HAVE_THREADS for --without-threads configure script option.</li>
<dt>2010-09-20 6.6.4-5 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
<li> Modified "magick/resize.c" so that MagickPIL is a MagickRealType number. Some computations were needlessly done in long double precision because PIL forced an automatic upcast wherever it appeared. Changed its name to MagickREALTYPEPI. <- This was later reverted back to MagickPIL.</li>
<li> Modified "magick/resize.c" so that Bohman uses one trig call + one sqrt call instead of two trig calls.</li>
<dt>2010-09-20 6.6.4-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> modified "magick/resample.c" to allow use of either EWA or HQEWA (default)</li>
<li> Removed LanczosFast from supported filters (SincFast*SincFast is faster)</li>
<li> IPTC profile not always wrapped properly inside an 8BIM profile.</li>
<li> TIFF tile geometry must be divisible by 16.</li>
<dt>2010-09-15 6.6.4-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Rename of SincPolynomial to SincFast for easier user understanding</li>
<li> Ditto for LanczosChebyshev to LanzcosFast</li>
<dt>2010-09-14 6.6.4-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Switch default resize filters to using the faster SincPolynomial filter by default internally. However 'Sinc' will still use the Trigonometric function, and can be used to assign the trig version of Sinc() to filters using the filter expert options.</li>
<li> The default filter for 'distort' was found to be a very blurry inaccurate filter function. It was removed and replaced with a correct Gaussian filter (as used by resize)</li>
<li> Added a switch so that "-interpolate filter" will force the use of a cylindrical filter for ALL pixels in distorted images. That is you can use that switch to use a cylindrical filter even for images that are being enlarged by the distortion. However EWA is still currently using a fixed 2.0 sampling radius. This switch complements the use of "-filter point" which turns off EWA filters in favor of interpolation for all pixels in a distorted image. BOTH switches should not be used together.</li>
<li> A bug in the support radius of the EWA resampling function was found, now that correctly defined resize filters are being used. Suddenly Normal Gaussian distortions are not so blurry, and tests with distortions of the 'Rings' image show extremely good and clear results, with only minimal blurring. The filter 'blur' expert option can be used to adjust this further.</li>
The above represents a major improvement forward in the quality of the image distortion operator. But near-unity distortions (no scaling) are still overly blurry.</li>
<li> The RGBO format is now listed as a supported format.</li>
<dt>2010-09-07 6.6.4-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added the Nicolas Robidoux and Chantal Racette Lanczos resize filter function as "LanczosChebyshev" as faster alternative to Lanczos.</li>
<li> Re-code Nicolas Robidoux and Chantal Racette Polynomial Approximation of the Sinc Trigonometric resize filter, as a proper filter to allow direct comparison and speed testing of the filter.</li>
<li> Expanded the "-set option:filter:verbose 1" output, so as to also include the actual functions and other values that were used to create the filter.</li>
<li> Fixed bug in the raw BGRA coders (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16880).</li>
<li> Fix off-by-one error in the PSD coders.</li>
<li> Nicolas Robidoux with the assistance of Chantal Racette contribute an approximation of the sinc function over the interval [-3,3].</li>
<li> Eliminate a small memory leak in LevelizeImageChannel() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16951).</li>
<li> The AdobeRgb.tif TIFF image no longer faults under Windows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16838).</li>
<li> Add -subimage-search option to the compare utility.</li>
<li> The -fx 2e+6/1e+5 argument no longer returns the wrong results (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16833).</li>
<li> The orient option sometimes improperly set "undefined" (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16795).</li>
<li> Only list orientation options for the -list orientation option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16801).</li>
<li> Return proper standard deviation for combined channels (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16786).</li>
<li> Handle transparency properly for the PSD image format.</li>
<li> Eliminate useless message about assuming zero delay when writing a single-frame MNG, and changed it from Error to Warning when writing a multiple-frame MNG.</li>
<li> Don't "ping" a PNG image if it is embedded in a MNG. Otherwise the reader tries to read MNG chunks from the interior of the embedded PNG, resulting in an erroneous "corrupted image" message.</li>
<li> The PNG decoder failed to handle the tRNS chunk properly for grayscale images where the PNG bit_depth was not the same as the quantum depth, and the transparent color was not black.</li>
<dt>2010-07-01 6.6.3-0 Chris Madison <madisonblu@gmail...></dt>
<li> Pinging the DJVU image format no longer faults.</li>
<li> Check for time-limit-exceeded in only one thread.</li>
<li> Reading filenames from a file (e.g. @filenames) no longer includes the utility name (side effect of StringToArgv() method).</li>
<li> Properly scale color components of the PNG bKGD chunk.</li>
<li> Prevent MNG divide by zero in calculation of frame_timeout. Set both frame_delay and frame_timeout to infinite when ticks_per_second is zero, as required by the MNG spec.</li>
<li> Respect density when rendering SVG images.</li>
<li> Set AVI handler to the MPEG coder.</li>
<li> Compute the proper DPX user data field size.</li>
<li> Do not interpret a format specifier when enclosed in brackets (e.g. rose_tile_%[filename:tile].gif.</li>
<li> Use 64-bit types when compiling with the 64-bit Visual C++ compiler under Windows.</li>
<li> Prevent MNG divide by zero in calculation of frame_delay (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16320).</li>
<dt>2010-05-23 6.6.2-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Third Re-write of MorphologyApply() to better handle compound methods.</li>
<li> Implemented -set option:morphology:compose for merging results of multiple kernels. "None" means re-iterate results with next kernel. While "Undefined" means to use the internal default for a method. Thinning, Thickening, HitAndMiss, Convolve, Correlate defaults to "None" while HitAndMiss defaults to "Lighten" (union of all kernel results). Other morphology methods defaults still to be decided.</li>
<li> PSD images require a proper layer to support an alpha channel.</li>
<li> Enable PFM endian support.</li>
<li> Add context to -border for montage. Inside the parenthesis it adds a border to the image otherwise it sets the border for the layout manager.</li>
<li> 24-bit BMP images are not colormapped even if header colors != 0.</li>
<li> Set DPX user data like this: -set profile dpx:userdata.txt.</li>
<li> Make sure Lab => RGB => Lab survives the round trip.</li>
<li> Increase the estimated # points for the path drawing primitive.</li>
<li> Remove any prior resolution block from PSD before writing the new block.</li>
<dt>2010-05-14 6.6.1-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Addition of more Morphological/Convolution Kernels. DOG (Difference of Gaussians) and DOB (Difference of Blurs), EG: -morphology convolve DOG:0x1,3 -morphology convolve DOB:0x1,3,90</li>
<li> Do not claim gray colorspace if gray image includes a non-gray pixel.</li>
<li> Initialize BMP alpha channel to opaque for RGB images.</li>
<li> Fixed under allocation for round rectangles.</li>
<li> The -list option returns a 0 status as expected.</li>
<dt>2010-05-06 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Made use of new no-'sync' channel enabled mathematical compose methods for the difference morphology methods. These should now work correctly for specific channels, and more importantly for alpha shaped morphology.</li>
<li> Simplified and corrected rowbytes calculation in coders/png.c and added more logging.</li>
<dt>2010-05-05 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Rename of "Add" and "Subtract" compositions to "ModulusAdd" and "ModulusSubtract" for more clarity of there functions. Old names will continue to work as expected.</li>
<li> Fix "Minus", "ModulusAdd", and "ModulusSubtract" to follow normal SVG 'Over' blending specifications, (see next for override) Note that this does NOT include the "Plus" composition method which has SVG definition for it to use a 'Plus' blending rather than 'Over' blending.</li>
<li> By default mathematical compositions work as per SVG definition. That is the results are synchronized with 'Over' alpha-blending (except "Plus" which uses 'plus' alpha-blending).</li>
<li> By removing the default 'sync' flag from the -channel setting however Break this inter-channel synchronization and do the mathematical operations only on the individual channels as specified by the -channel setting. That is do 'channel' math rather than 'SVG' composition.</li>
<li> With this change you can then use mathematical composition methods on individual channels or even with the alpha channel of images.</li>
<dt>2010-04-28 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Special case handling in Barrel distortion (pixel at image center)</li>
<li> Calculation of image for Barrel distortion (pixel vs image coords)</li>
<li> Argument input (handling optional 'd' argument) for Barrel distortion</li>
<li> Only write one ICC profile to PSD image.</li>
<li> Sync image colormap for PNG tRNS chunks.</li>
<li> The -direction option now works with the -annotate and -draw options.</li>
<li> For the histogram: format, if you have no need for the unique color list, use <kbd>-define histogram:unique-colors=false</kbd> to forego this expensive operation.</li>
<li> Match on literal after backslash in glob expression (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16068).</li>
<li> Enable JPEG-compression for grayscale TIFF images (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16064).</li>
<li> Don't write empty tile if tile geometry matches the image width (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16064).</li>
<li> Support -regard-warnings in the mogrify utility.</li>
<li> Output the correct units for the identify utility (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=16075).</li>
<li> Improve support for device link profiles.</li>
<dt>2010-04-06 6.6.1-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Fixed bug in -auto-level for special case when only one value is present in some channel of the image. In this case no 'stretch is performed, just as -normalize does.</li>
<li> Respect the -density option when rendering a Postscript or PDF image.</li>
<li> Distort barrel no longer complains when 3 arguments are given (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=15883).</li>
<li> Support -direction left-to-right option for rendering text</li>
<li> Eliminated some of the deprecated direct references to members of the png_info structure. This must be finished before we can build with libpng-1.5.</li>
<li> The animate program no longer loops twice when -loop 1 is specified.</li>
<li> The caption format would sometimes hang when the text was not UTF-8.</li>
<li> Don't gamma correct log to linear color conversion unless the -gamma is specified (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=15799).</li>
<li> Add support for the Adobe Large Document format.</li>
<li> Recognize -remap option for the mogrify utility.</li>
<li> The default Helvetica font is not always available, check for Century Schoolbook too (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=15780).</li>
<li> Check to see if ICON image width /height exceeds that of the image canvas.</li>
<li> Set the DPX descriptor to Luma only if the image type is not TrueColor.</li>
<li> Add support for -fx airy(), j0(), j1(), jinc(), and sinc() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=15685). Anthony, review these for correctness.</li>
<li> Don't embed an XMP profile in an EPS image for now.</li>
<li> Make -define png:color-type less persnickety about what it will accept.</li>
<dt>2010-01-24 6.5.9-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> added use of -precision in 'showkernel' output of -morphology</li>
<li> correct use of a 'reflected kernel' for 'Convolve' 'Dilate' and 'Distance' Morphology primitives. This does not have a performance hit, though is only truely applicable when the kernel is asymmetric. Note that 'Erode' does not use a 'reflected' kernel, so that 'Open' and 'Close' operations work properly. This 'reflected usage is defined by online morphology lecture notes (Google for "EECE Binary Morphology")</li>
<li> Added convolve kernel scaling setting "-set option:convolve:scale N" If undefined morphology convolve does not do any scaling or normalization of the convolution kernel. A value of 0.0 causes normalization for both zero and non-zero (added weights) kernel types.</li>
<li> Add support for compact floating point (i.e. -depth 16 -define quantum:format=floating-point).</li>
<li> Transparent images no longer flicker on certain system when using the display program.</li>
<li> Permit interactive resizing with the display program.</li>
<li> Support heterogeneous distributed processing, see ../www/architecture.html#distributed.</li>
<li> Fix semaphore assertion when reading a corrupt image with Magick++.</li>
<li> Add support for -brightness-contrast option.</li>
<dt>2010-01-05 6.5.9-0 Stephan Menzel <stephan.menzel@gmail...></dt>
<li> Add support for the BGRA raw image format.</li>
<dt>2010-01-04 6.5.9-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added Kernel Generator to generate kernels from user strings, which allows the generation in many built in kernels for both Convolution and other Morphological methods. New Kernels currently include.. Convolution: Gaussian, Blur, Comet Morphological: Rectangle, Square, Diamond, Disk, Plus Distance: Chebyshev, Manhatten, Knight, Euclidean And both old and new (rectangular) user defined kernel specifications including the use of 'nan' to represent elements which are not part of the kernel definition. List built-in kernel types use "-list kernel"</li>
<li> Added -morphology {method}[:{iteration}] {kernel_string} Initial methods includes no only the basic morphology methods: Dilate, Erode, Open, Close; and a pixel color preserving 'Intensity' version, but also the special methods: Convolve, and Distance. Of course the appropriate kernel should be provided for each specific method.</li>
<li> Read / write 32-bit SUN raster images with a odd width.</li>
<li> Cairo format returns pixels with the alpha premultiplied (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=15081).</li>
<li> SVG compile error when if MAGICKCORE_CAIRO_DELEGATE is not defined.</li>
<dt>2009-08-23 6.5.5-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Bug Fix for transparency handling in Composite Variable Blur</li>
<li> Addition of -auto-level and -auto-gamma image enhancements (under trial not yet final)</li>
<li> Addition of a special -channel flag 'sync' which means that the specified channels are to be modified together by the same amount. The flag is enabled by default. This replaces the current 'channels not modified' type handling thought IM.</li>
<li> Modified -channel parsing to continue looking for words, after handling any shorthand channel options. For example: -channel RGB,sync</li>
<li> The -thumbnail option no longer removes color profiles (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=14312).</li>
<li> Do not scale real / imaginary FFT / IFT.</li>
<li> Check for localtime() NULL return.</li>
<li> import --help requires an X server (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=14323).</li>
<li> Fails to load MS Windows icons with compressed PNG elements (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=14324).</li>
<li> More than one -dispose setting overwrote previous settings (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=14252).</li>
<li> Don't use JPEG's color reduction algorithm for less than 8 colors.</li>
<dt>2009-07-13 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Final testing and bug fixes for all mathematical compose methods Including non-overlapping regions bugs found in in operators Divide, ColorDodge, VividLight. And the handling of transparency to follow standard 'Over' Blending in Divide. Only math methods not looked at are the addition methods Plus, Add, Minus, and Subtract, which do not follow normal 'Over' alpha blending behavior, for the purposes of mask handling.</li>
<dt>2009-07-12 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Addition of user definable 'Mathematics' compose method -compose Mathematics -set option:compose:args A,B,C,D -composite Will implement the formula f(Sc,Dc) = A*Sc*Dc + B*Sc + C*Dc + D this lets you implement most smooth polynomial compose methods. (requested by Fred WienHaus)</li>
<dt>2009-07-11 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Finished the recoding of Composite methods to allow easier debugging and faster access.</li>
<li> Added PegtopLight compose method as an alternative simpler Softlight alternative. See notes and comparison to SoftLight in... http://www.pegtop.net/delphi/articles/blendmodes/softlight.htm</li>
<li> From the notes on Photoshop blend modes at http://www.simplefilter.de/en/basics/mixmods.html Added extra composition modes: VividLight, PinLight, LinearBurn, LinearDodge NOTE: 'LinearBurn' the same as 'Plus' but with the normal 'Over' blending.</li>
<dt>2009-07-10 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Re-coding of Composite methods HardLight, SoftLight, Overlay, LinearLight, ColorBurn, ColorDodge, Multiply, Screen to make it more readable, easier to debug, and directly comparable to SVG specifications.</li>
<li> Specifications changed for SoftLight, ColorBurn, ColorDodge Though only SoftLight changed to significantly.</li>
<li> However implementation errors were found for ColorBurn, LinearLight</li>
<li> Add compression flag for each channel of a PSD layer.</li>
<li> Implement experimental forward and inverse Fourier transforms (contributed by Sean Burke and Fred Weinhaus). The -fft / -ifft option is not ready for prime time just yet.</li>
<li> Support -cdl (color decision list) option.</li>
<li> Don't process directories as filenames when using wildcard paths (i.e. logo[1]/png).</li>
<li> Off by one error for multi-frame raw grayscale images.</li>
<li> Can't stat() a Zip or Bzip opaque structure.</li>
<li> DPX user bits are no longer truncated.</li>
<li> Return image colorspace for -format [%colorspace] option.</li>
<li> ThumbnailImage(): don't subsample if image is already thumbnail size.</li>
<dt>2009-06-23 6.5.4-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Automatic determination of B from C and C from B for a 'Keys Filter' when using the B,C Cubic Filter Expert options was broken. See https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=14037</li>
<dt>2009-06-19 6.5.4-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Added -compose 'Blur', variable blur mapping to CompositeImages Arguments X_scale x Y_scale + angle of the blurring ellipse.</li>
<li> Added "-blur" special compose option to "composite"</li>
<li> Cleanup of "composite" compose argument handling</li>
<dt>2009-06-14 6.5.3-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Cleanup of compose 'displace' of old useless code that is not used.</li>
<li> Implement a compose 'distort' mapping method, This is basically exactly like 'displace' but relative to a fixed point which may be user supplied as +X+Y</li>
<li> Default scaling to width/2 and height/2 of overlay (100% scale) with a distortion 'center' to the middle of the overlay image</li>
<li> If a '%' flag given scale displacement relative to image size</li>
<li> If a '!' flag given make scale and center relative to 'background' image instead of the overlay map.</li>
<li> If no 'height' scale given, use the X scale.</li>
<dt>2009-06-13 6.5.3-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Fixed bug for compose methods, Hue, Saturate, Luminize</li>
<li> Added the HALD image Color LUT, and a no-op HALD: image generator. See Introduction at http://www.quelsolaar.com/technology/clut.html</li>
<dt>2009-06-07 6.5.3-4 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Changed CompositeImageChannel() so that extra compose arguments are now passed in the ImageArtifact "compose:args". This can be assigned to images using -set "option:compose:args" 'args' where args are defined using 'geometry' style or 'comma separated numbers'.</li>
<li> Declared the special flag needed for Composite Tiling as the ImageArtifact "compose:outside-overlay".</li>
<li> Documentation update for CompositeImageChannel() in Core Library to reflect these changes.</li>
<li> Documentation update for DistortImage() in Core Library with the extra ImageArtifact controls it can use.</li>
<li> Bug correction in normalization of GetOptimalKernelWidth2D() of gem.c</li>
<dt>2009-06-06 6.5.3-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Documentation update for CompositeImageChannel() in Core Library. This adds the information on how extra compose arguments needed for specific compose methods are actually passed to the library function. Compose methods such as Blend, Dissolve and Displace.</li>
<li> Progress on "-define png:bit-depth=value" and "-define png:color-type=value" It is now able to write an opaque black-and-white image in any of the 15 valid combinations of PNG color-type and bit-depth.</li>
<li> Fixed a regression with writing sub-8-bit grayscale PNGs.</li>
<dt>2009-05-06 6.5.2-2 Chris Madison <madisonblu@gmail...></dt>
<li> Create 8-bit TIFF images if -depth is set to 8 and HDRI-enable ImageMagick.</li>
<dt>2009-05-04 6.5.2-1 Chris Madison <madisonblu@gmail...></dt>
<li> Accept file lists on the command line (e.g. echo "rose: rose.png" | convert @- ...).</li>
<li> Duplicate line in tiff.c breaking read of zip compressed tif (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13688).</li>
<li> Support policies to permit or deny any coder, delegate, filter, or file path (see policy.xml).</li>
<dt>2009-05-02 6.5.2-0 Chris Madison <madisonblu@gmail...></dt>
<li> The mogrify -crop option returns multiple images if an x/y offset is not specified (e.g. -crop 100x100).</li>
<li> Generate a proper file path for -path @filelist.txt (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=13671).</li>
<li> Accept "-define png:bit-depth=value" and "-define png:color-type=value" options. This is work-in-progress with the objective of being able to precisely specify the type of PNG file to be written. The previously-used internal attribute "png:bit-depth" that was used to communicate between the PNG writer and the JNG writer is changed to "png:bit-depth-written". This feature needs testing. It is important to note that this feature cannot be used to force the PNG to use a bit-depth or color-type that does not losslessly represent the image. You can, however, cause the writer to use a larger depth or to use the RGB colorspace when grayscale or indexed would have been sufficient.</li>
<dt>2009-05-01 6.5.1-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Fixed the Rmin usage in Depolar and Polar distortions</li>
<li> The 6th argument (Ato) for Polar/Depolar is now optional and defaults to Afrom + 360 degrees (or a fill circle from the given start angle)</li>
<li> Do not return a black image for -channel RGBA -gaussian (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13669).</li>
<li> Generate BMP 32-bit ARGB format for images with transparency (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13633).</li>
<li> Grok 'image.psd[0]' and 'image.mpg[0]' (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=13609).</li>
<li> Normalize similarity based on reconstruction not the original (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13626).</li>
<li> Support multiple JPEG images encapsulated within DICOM.</li>
<li> Sometimes the PNG8: format would produce 1-, 2-, or 4-bit PNG datastreams. Now it always produces 8-bit datastreams as users probably expect.</li>
<li> The display program now returns a 0 exit code on success (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13579).</li>
<li> Image not properly placed when displaying to the X server root (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13532).</li>
<li> fmax() is not support on some platforms (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13533).</li>
<dt>2009-04-11 6.5.1-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Rename existing "Bilinear" distortion as "BilinearReverse"</li>
<li> Added forward mapped bilinear distort as "BilinearForward"</li>
<li> The "Bilinear" distort is temporarily obsoleted but will eventually be added as a "BilinearReverse" and "BilinearForward" combination mapping though a unit square.</li>
<li> Sparse Gradient internally uses "BilinearReverse" for its "Bilinear" gradient function as that method is the direct use of such equations.</li>
<li> Missing locks in blob - race condition (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13385).</li>
<dt>2009-03-19 6.5.0-3 Chris Madison <madisonblu@gmail...></dt>
<li> Use default SVG resolution unless resolution is explicitly set (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13373).</li>
<li> ImageToBlob() no longer faults if Jasper compression is wrong (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13372).</li>
<li> Fix the image compose operator at OverCompositeOP for shadows (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=13330).</li>
<dt>2009-03-14 6.5.0-1 Paul Smedley <paul@smedl...></dt>
<li> Patches to get ImageMagick working under OS2.</li>
<dt>2009-03-10 6.5.0-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Expansion of Virtual-Pixel (Cache) handling, to include corrected Mirror, plus addition of CheckerTile, HorizontalTileEdge and VerticalTileEdge</li>
<dt>2009-03-10 6.5.0-0 John Cupitt <jcupitt@gmail...>,</dt>
<li> Convert returns MagickFalse for the -version option (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=13230).</li>
<li> Don't set pixel opacity unless the image alpha channel is active (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=13189).</li>
<dt>2009-02-27 6.4.9-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
<li> Fix old -clut bug for re-coloring gray images using transparent and semi-transparent colors.</li>
<dt>2009-02-22 6.4.9-7 Rick Mabry <rick.mabry@anony...></dt>
<li> Changes have been made to scores of the files that generate the documentation. The most noticeable cosmetic changes are to the command-line examples and command-line snippets, which now have a new look: dark blue boxes with white/yellow text to indicate sample input/output. Inclusion of current version and release dates in appropriate places are now automatically generated. Also, many changes have been made to begin to bring the pages into strict W3C compliance with respect to both HTML and CSS.</li>
<dt>2009-02-21 6.4.9-7 Chris Madison <madisonblu@gmail...></dt>
<li> The identify program reads the image pixels when the -format option is asking for image statistics.</li>
<li> Much improved ImageMagick validation suite (exercise with 'make check').</li>
<dt>2009-02-18 6.4.9-5 Jon <jon@brick...></dt>
<li> Processing the arg list -tile is replaced by -sans0 which is 1 char longer and which overwrites the allocated area.</li>
<dt>2009-02-16 6.4.9-5 Chris Madison <madisonblu@gmail...></dt>
<li> Add section to license to alert users to third-party licenses in the NOTICE file.</li>
<dt>2009-02-11 6.4.9-3 Anthony <A.Thyssen@griffith...></dt>
<li> Replaced geometry string parsing using ParseGravityGeometry() in "composite" with more direct use of GravityAdjustGeometry();</li>
<li> TransformImageColorspace() returns GRAYColorspace when set (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12990).</li>
<li> Don;t assume CMYK unless document process colors include Cyan, Magenta, or Yellow.</li>
<li> Respect mouse wheel movements for display program (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=12938).</li>
<li> Grab button in Display Open menu now works consistently (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12942).</li>
<li> Patch for problem with opacity in MVG (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12946).</li>
<li> Calculate the kurtosis and skewness of image channels (reference http://amartyosscrapbook.blogspot.com/2008/12/formulas-used-to-calculate-kurtosis-and.html).</li>
<dt>2008-12-28 6.4.8-4 Rick Mabry <rick.mabry@anony...></dt>
<li> Patch magick/display.c and PerlMagick/ContrastStretchImage() to return the same results as the -contrast-stretch option.</li>
<li> ContrastStretchImageChannel() no longer interpreted as Contast() by MogrifyRegion() in PerlMagick.</li>
<dt>2008-12-28 6.4.8-3 Rick Mabry <rick.mabry@anony...></dt>
<li> Reverse argument and option in Throw*InvalidArgumentException() macro for proper exception message.</li>
<li> Recognize negative geometries for -shear and -annotate (.e.g. 45x-30).</li>
<li> Use GetImageArtifact() to retrieve -attenuate option value for +noise.</li>
<li> Support reading FITS test files (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12799).</li>
<li> Replace input.ttf with the public domain Tuffy.ttf font.</li>
<li> MagickNewImage() no longer faults when parameters are incorrect (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12817).</li>
<li> Allocate strings returned by XGetResourceInstance() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12818).</li>
<li> The -append gravity is relative to the container (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=12821).</li>
<li> Add -interword-spacing option to convert.</li>
<li> Initialize the black channel when testing the CMY colorspace (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12685).</li>
<li> remove calls to exit() in MagickWand (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=12772).</li>
<li> Validate -affine arguments.</li>
<li> Accept -attenuate as an option for convert.</li>
<li> Properly create RGBA image if colormapped image has transparency.</li>
<li> Support X11 geometry like this: +-4+-4; weird but X11 supports it.</li>
<dt>2008-12-17 6.4.7-10 Chris Madison <madisonblu@gmail...></dt>
<li> Fix off-by-one problem with -shear.</li>
<li> Clone pixel cache method when cloning an image.</li>
<dt>2008-12-16 6.4.7-9 Anthony <A.Thyssen@griffith...></dt>
<li> Make "-layers Coalesce" work as it should.</li>
<dt>2008-12-16 6.4.7-9 Sam Fisher <fisher@image...?</dt>
<li> Off by one error when computing affine in DrawAffineImage() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12391.</li>
<li> pthread_t can be aggregate so stop treating it like its atomic.</li>
<li> default the WPG image size to 1 top avoid "no pixels defined in cache" exceptions.</li>
<dt>2008-10-17 6.4.4-8 Anthony <A.Thyssen@griffith...></dt>
<li> slight modification of the added "radial-gradient:" image generator so the radius goes to an edge rather than the corner, allowing more user control based on image size.</li>
<li> Don't unregister a module for an image coder signature exception.</li>
<li> Don't assume a monochrome image is colormapped.</li>
<dt>2008-09-25 6.4.4-0 Anthony <A.Thyssen@griffith...></dt>
<li> Attempt to fix three image "composite -displace" while also allowing use of separate X, Y grayscale displacement maps, or a merged X=red Y=green (later transparency mask will also be added) as discussed in IM Examples, 'distortion maps', but for -displace.</li>
<li> Fixed an OTB coder bug (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12119).</li>
<dt>2008-09-23 6.4.3-8 Peter Fales <psfales@alcat...></dt>
<li> Add NULL terminator to options list to in MontageImageCommand().</li>
<dt>2008-09-23 6.4.3-8 Anthony <A.Thyssen@griffith...></dt>
<li> Added -layers TrimBounds which will adjust the offsets and canvas bounds to fit the current sequence of layered/animated images. The images themselves are not modified only the 'page' meta-data. As a side-effect all offsets will become positive, with a minimal canvas width/height.</li>
<li> No need to specify -endian for native floating point format.</li>
<li> Remove small memory leak when cloning image properties (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11981).</li>
<li> The scan delegate requires a device name, not a symbolic link.</li>
<li> Report alpha instead of opacity for the TXT image format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12002).</li>
<li> Add channel support to -motion-blur.</li>
<li> Set the SVG affine matrix *before* we compute the scale (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12030).</li>
<li> Rely on 'omp critical' in the rare case where OpenMP is enabled but ImageMagick distribution is built without thread support.</li>
<li> Return the correct number of unique colors for colormapped image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12055).</li>
<li> SVG depends on MagickWand for parallel make (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=12099).</li>
<li> Add $(MAGICKWAND_LIBS) dependency to the PerlMagick Makefile (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11908).</li>
<li> Fix configure script to configure the JBIG delegate library (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11907).</li>
<li> Error in indexed PNG output if number of colors <= 16 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11905).</li>
<li> The -draw option no longer returns an error when for # like .6 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11879).</li>
<li> Change MPEG delegate from mpeg2decode/mpeg2encode to ffmpeg (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11827).</li>
<li> Patch -fx to properly recognize maxima and minima.</li>
<li> Add channel specifier to -fx depth, mean, maxima, minima, and standard_deviation (e.g. depth.r).</li>
<li> Properly append .magick to the USERPROFILES path (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11806).</li>
<dt>2008-07-30 6.4.2-6 Anthony <anthony@griffith...></dt>
<li> Added a "-set option:distort:scale" which scales the output 'view' by the amount given. This is directly useful for doing 'super-sampled' distorts, just set this, the scale the result back to a normal size.</li>
<dt>2008-07-27 6.4.2-5 Anthony <anthony@griffith...></dt>
<li> Rewrite on coefficient handling for DistortImages so allow for generation by other operators (SparseColor), and addition of verbose output of equivalent -fx functions for DistortImages to report of the internal coefficients that was calculated, and who they are used.</li>
<li> Initial implementation of SparseColor for interpolated gradients from sparsely separated points of color (or possibly other forms of arguments)</li>
<li> New distortion Barrel as defined by Helmut Dersch options A,B,C,D on his web page http://www.all-in-one.ee/~dersch/barrel/barrel.html And as developed by Fred WeinHaus in his PinBarrel script</li>
<li> Fixed cache nexus threading problem to avoid spurious assertions when calling the DistortImage() method.</li>
<dt>2008-07-17 6.4.2-4 Anthony <anthony@griffith...></dt>
<li> New distortion Shepards which provide semi-localized distorts of control points within an image, as first developed for IM by Frew Weinhaus in his ShapeMorph script. http://www.fmwconcepts.com/imagemagick/shapemorph/ It's almost like taffy pulling!</li>
<dt>2008-07-12 6.4.2-2 Anthony <anthony@griffith...></dt>
<li> Separate coefficient calculation from DistortImages (future development)</li>
<li> Perspective and Bilinear Distortions fallback to Affine when less than 4 point pairs are provided.</li>
<li> Affine Distortion now handles 2 point pairs (SRT of a single line) and a simple translation if only a single point pair is provided.</li>
<li> Added 'verbose' output of some of the distortion equations generated</li>
<li> Initial addition of polynomal distortion (incomplete - not working yet)</li>
<li> Use the source image interpolation method when drawing an affine image.</li>
<dt>2008-06-24 6.4.2-1 Anthony <anthony@griffith...></dt>
<li> Added new operator +/-level-colors which will 'level' images based on colors to use for the black and white points. This lets to adjust the image in terms of mapping the given colors from/to black and white respectively.</li>
<dt>2008-06-23 6.4.2-0 Christian Lackas <christian@lacka...></dt>
<li> Fix a problem with calling mpeg2encode with parameters (%o/%i) in wrong order.</li>
<li> Add pow as an -evaluate operation, using normalized values</li>
<dt>2008-06-18 6.4.1-9 Anthony <anthony@griffith...></dt>
<li> Added a LevelizeImageChannels() which is similar to LevelImageChannels() Function maps black and white values to the given level values. Rather than mapping the given level values to black and white. Basically a 'reverse-level' function, with different input args.</li>
<li> Set +level or a '!' flag in -level or LevelImage() to call the new 'reverse-level' function LevelizeImageChannels().</li>
<li> More work on IsMagickColorSimilar() to fix relationship between transparent-black and opaque-black, which was matched as 'similar'. Also attempts to fix 'K' channel handling for CMYK colorspace. More work on this to come.</li>
<li> Interpreting the -set option is no longer delayed.</li>
<li> Add AcquireCacheViews() and DestroyCachewViews() to the API.</li>
<li> Call DrawAffineImage() instead of CompositeImage() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11288).</li>
<li> Throw exception for TIFF compression not support (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11289).</li>
<li> The +opaque option now recognizes its required argument (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11298).</li>
<li> The -background and -virtual-pixel settings are now applied correctly across parenthesis.</li>
<li> Only reset the exception signature if the relinquish memory is MagickTrue.</li>
<li> Correct recolor equation for computing opacity (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11346).</li>
<li> Set midpoint when scaling JP2 images.</li>
<li> Semaphores must be passed by reference when destroyed for reliable thread locks.</li>
<li> Updated Matlab coder (thanks to Jaroslav Fojtik).</li>
<li> Distinguish between pre and post processing of image list options.</li>
<li> Return MagickTrue if InvokeDynamicImageFilter() does not generate an exception (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=11065).</li>
<li> Instead of masking the PNG tRNS values when reducing from 16-bit, set image->matte to MagickFalse and emit a warning. This will produce behavior similar to that of libpng-1.2.27 (and libpng-1.2.19 and earlier).</li>
<li> Fix fault for animate -window root image.gif.</li>
<li> Use GetImagePixels() rather than SetImagePixels() when making multiple passes and setting image pixels (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=11022).</li>
<li> Revised png.c to avoid saving unknown chunk types that will never be used later. This prevents the vulnerability described in CVE-2008-1382, with respect to all unknown chunks except vpAg. To handle an invalid, zero-length vpAg chunk properly will require libpng-1.2.27 or later.</li>
<li> SpreadImage() no longer introduces noise into the resulting image (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=10892).</li>
<li> Return the actual image format for HTTP: or FTP: format (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=10715).</li>
<li> Fix so image.quantize(true) returns error as expected (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=10735).</li>
<li> Fixed a small memory leak (8 bytes) in TransformImages().</li>
<li> Render to Cairo surface rather than a GDK buffer when rendering SVG.</li>
<li> Identify now reports both actual and reported image depths (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=10716).</li>
<li> Liquid rescale limits the final size to twice the original size (reference https://imagemagick.org/discourse-server//viewtopic.html?f=1&t=10536).</li>
<li> Read EXIF data in TIFF images; writing is pending until we can figure out how to use the libtiff delegate library to write EXIF data.</li>
<li> Fixed transparency bug for the ICO image format.</li>
<li> Fixed small memory leak in the caption and label coders.</li>
<li> Fixed -threshold option to return all white for -threshold 0 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=10126).</li>
<dt>2007-11-06 6.3.6-10 Chris Madison <madisonblu@hotma...></dt>
<li> Corrected CGM delegate command in config/delegate.xml.</li>
<dt>2007-11-05 6.3.6-9 Chris Madison <madisonblu@hotma...></dt>
<li> Reclassified X server open error from fatal to non-fatal.</li>
<li> New SetImageAlphaChannel() method to activate, deactivate, reset, or set the image alpha channel.</li>
<li> Patch for Scanalytics IPLab image format for non 8-bit images (contributed by Sean Burke).</li>
<dt>2007-11-04 6.3.6-8 Chris Madison <madisonblu@hotma...></dt>
<li> Remove ctrl-M characters on in various source files.</li>
<li> Fix signature for Magick++ averageImages() regression tests for HDRI.</li>
<li> Only invoke PerlMagick x11 regression test if DISPLAY variable is set.</li>
<dt>2007-11-03 6.3.6-7 Chris Madison <madisonblu@hotma...></dt>
<li> MAGICK_ERX_SRCS should be MAGICK_EXR_SRCS in coders/Makefile.am.</li>
<li> Upgrade to FPX version libfpx-1.2.0.14 (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=10041).</li>
<li> Modules are searched first in the directories specified by the environment variables, and then -- if the desired module is not found -- in the compiled-in path. (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=10039).</li>
<li> 'verbose' filter plotting output using -define "filter:verbose"</li>
<dt>2007-10-20 6.3.6-3 Anthony <anthony@griffith...></dt>
<li> Further expansion and handling of filters with expert options. -filter selects from a table of standard filter settings, while expert options allow complete selection of filter, windowing, support and blurring options. Includes automatic switch from Sinc to Bessel for operators using 2-dimensional cylindrical filter, rather than two pass 1-dimensional orthogonal filters.</li>
<li> Expansion to add -set/define filter options</li>
<dt>2007-10-12 6.3.6-2 Anthony <anthony@griffith...></dt>
<li> Least Squares coordinate handling added for -distort methods Affine, Perspective, Bilinear. This allows for more than the minimal number of coordinates to be used to 'fit' a distortion function to an image. This addition will allow the use of image registration to generate panorama overviews and better geographical coordinate correction.</li>
<li> Consolidated the similar methods FlattenImage() and MosaicImage() into a new layers function MergeImageLayers() method, adding 'flatten' and 'mosaic' layer methods.</li>
<li> Addition of another similar layers method 'merge' which 'unlocks' the normal flatten/mosaic layer merger from the origin, The resulting image will have a virtual canvas of minimal size with an offset. Also images with negative offsets will not be clipped by the 'merge' form of the command. This was created for better layering of distorted images, such as panorama overlays.</li>
<li> Bug fix in handling transparency for EWA resampling.</li>
<li> Access to Resize Filter Functions from resize.c (for resample.c) with possible future filter sources... Acquire/Destory/Call ResizeFilter()</li>
<li> All resize filters added to resampling, but filter handling is incomplete.</li>
<li> Check the API version and quantum depth before loading a coder module or image filter (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9780).</li>
<li> Add exception to the image filter signature.</li>
<li> Get the execution path under Mac OS X.</li>
<li> TIFFTAG_STRIPBYTECOUNTS requires a uint32 pointer (magick/compress.c).</li>
<li> Fixed memory leak in CloneString() (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9763).</li>
<li> Set S_IRUSR | S_IWUSR | S_IRGRP mode when writing a file in CopyDelegateFile().</li>
<dt>2007-09-18 6.3.5-9 Anthony <anthony@griffith...></dt>
<li> Bug fix for +distort in Perspective, also effected PerspectiveProjection</li>
<li> Replace all InterpolatePixelColor() calls to use the ResamplePixelColor() method instead.</li>
<li> Map the display program pan icon window for each oversized image.</li>
<li> The ufraw delegate does not like quotes around the output filename.</li>
<li> Adjust the sensitivity of a few PerlMagick tests to pass the validation on a 64-bit FreeBSD system.</li>
<li> The -level option now works properly for colormapped images.</li>
<li> Allow Extrapolated blending of images using -blend http://netpbm.sourceforge.net/doc/extendedopacity.html</li>
<dt>2007-09-12 6.3.5-9 Anthony <anthony@griffith...></dt>
<li> Major Addition, Area Resampling Functions, (scaled interpolation) for pixel lookup in Distortion functions. This improves the look in areas of minification enormously, especially in situations of infinite tiling and horizon views. All virtual pixel methods have been handled to minimise computation time involved with area resampling. To use the new function distortions need to be able to determine scaling vectors (distortion function derivatives) for correct working. All -distort methods, except Arc, uses scaled area resampling.</li>
<li> Improvements to perspective distort method, to include the correct differentiation between the 'ground' on which the image lies, and the 'sky', the color of which can be set using the -mattecolor setting (as the distortion invalid pixel color). Background color is retains for surrounding ground areas. The horizon is also correct anti-aliased and transparent colors are also allowed, allowing you to add backdrops of gradients and patterns.</li>
<li> Add -alpha {activate,deactivate,reset} option to activate, deactivate, or reset the alpha channel.</li>
<li> Render proper image labels for VID coder.</li>
<li> Resolved a conflict for the -list option. Use -list font to list ImageMagick fonts and -list type to list image types.</li>
<li> Catch any errors returned by pthread_mutex_init() (problem report from devman@gmx-t...).</li>
<li> TransformHSL() returns a proper hue component.</li>
<li> Added -clut option and the ClutImage() method.</li>
<li> Fix glyph memory leak in AnnotateImage (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9523).</li>
<li> Rename analyze.c to Analyze.c (reference ttp://imagemagick.org/discourse-server/viewtopic.html?f=3&t=9538).</li>
<dt>2007-08-07 6.3.5-6 Anthony <anthony@griffith...></dt>
<li> Enabled use of +distort to auto resize destination image to 'bestfit' the distorted input image. This also enabled the use of virtual canvas offsets in source and destination images for most distortion methods.</li>
<li> Remove atexit in Magick++ code to avoid possible client crash (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9270).</li>
<li> Read/Write Scanalytics IPLab image format (contributed by Sean Burke).</li>
<dt>2007-07-30 6.3.5-5 Anthony <anthony@griffith...></dt>
<li> Added -distort arc. This update also allows the destination image size and offset to be set according to the specific distortion being applied.</li>
<li> Remove extraneous break statement so -type option properly sets the image_info->type member (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9261).</li>
<dt>2007-07-21 6.3.5-4 Anthony <anthony@griffith...></dt>
<li> Allow the use of optional arguments in -distort SRT</li>
<dt>2007-06-29 6.3.5-0 Anthony <anthony@griffith...></dt>
<li> Initial addition of three Affine Distortions to -distort with the affine mapping defined by the use of; an Affine Matrix, Coordinates of Triangles, or separate Scale-Rotate-Translate actions.</li>
<li> Add random noise option (e.g. +noise random).</li>
<li> Many internal algorithms are now threaded to take advantage of speed-ups offered by the new dual and quad-core processor technologies. and quad-core processor technology.</li>
<li> Tiff images in the LAB colorspace are no longer identified as RGB (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9015).</li>
<li> Update image color_profile and iptc_profile members in the JPEG coder (reference https://imagemagick.org/discourse-server//viewtopic.html?f=3&t=9063);</li>
<li> Added profile support to the GIF decoder/encoder. They are stored as GIF Application Extensions. Known extensions include existing ICCRGB1 (for ICC profiles) and new MGKIPTC0 and MGK8BIM0 (for IPTC and 8BIM profiles). Unknown extensions found in GIF files are read as gifappNNN.</li>
<dt>2007-04-28 6.3.4-0 Anthony <anthony@griffith...></dt>
<li> Invert Opacity change for user defined ordered dither threshold maps, so that 'off' map is transparent, and 'on' is opaque.</li>
<dt>2007-04-24 6.3.4-0 Anthony <anthony@griffith...></dt>
<li> Added an initial Coalesce Images, and a final +map local colortable optimization to the -layers Optimize method, for a simple to use GIF optimization operation. (more work to come)</li>
<li> Properly set the virtual canvas of a multi-frame GIF image sequence.</li>
<li> Add AcquireOneVirtualPixel() method.</li>
<li> Set Log colorspace properly when writing DPX images.</li>
<li> Add -tile-offset option.</li>
<li> Add support for the EXR image format.</li>
<li> Improve support for DPX images.</li>
<li> Add --enable-hdri option to the configure script.</li>
<li> Add support for high dynamic-range images (HDRI).</li>
<dt>2007-04-20 6.3.3-9 Peter Hull <peterhull90@gmail...></dt>
<li> Improve support for writing multiple image icons.</li>
<dt>2007-04-18 6.3.3-9 Anthony <anthony@griffith...></dt>
<li> Separated -layers Optimize from -layers OptimizeFrame to allow the former expansion into a general (multiple method) optimizer of GIF animations</li>
<li> merged -layers OptimizeTransparency into -layers Optimize method</li>
<dt>2007-04-12 6.3.3-8 Chris Madison <madisonblu@hotma...></dt>
<li> Fix fault whem comparing a colormapped image with a non-colormapped one.</li>
<li> Fix race condition when spawning delegate programs.</li>
<li> TIFF JPEG now respects the -quality compression setting.</li>
<li> The -fx option now properly groks the logical and operator.</li>
<li> DPX tilestamp property should be timestamp.</li>
<dt>2007-04-13 6.3.3-7 Anthony <anthony@griffith...></dt>
<li> Added GravityAdjustGeometry() to "geometry.c" to adjust geometry settings according to given gravity and canvas area it applies to. This is for code simplification throughout MagickCore.</li>
<dt>2007-04-09 6.3.3-6 Anthony <anthony@griffith...></dt>
<li> Fixed CoalesceImages() to reset virtual canvas info on second and later frames. Other animation handlers may also need to reset virtual canvas sizes to match the first frame, as well.</li>
<dt>2007-04-06 6.3.3-6 Anthony <anthony@griffith...></dt>
<li> Addition of a CompositeImages() "layer.c" function to compose two separate image lists together (with a virtual canvas offset) in three different ways, depending on the size of the lists.</li>
<li> A 'hack' for command line use (the two lists separates by the special "NULL" image, which is junked) has also been added. Specifically... "-layers Composite".</li>
<dt>2007-04-04 6.3.3-6 Anthony <anthony@griffith...></dt>
<li> Add -layers RemoveDups method to remove duplicate sequential images in coalesced animations.</li>
<li> Add -layers RemoveZero method to remove images with a zero time delay (with no action and a warning is all images have zero time delay)</li>
<li> Fixed DCM and XWD buffer overflow vulnerabilities (reference http://labs.idefense.com/intelligence/vulnerabilities/display.html?id=496).</li>
<dt>2007-03-28 6.3.3-4 Anthony <anthony@griffith...></dt>
<li> Code duplication, simplification, and possible logic faults in "list.c".</li>
<li> Added new Composition method, 'ChangeMask' to return pixels that have changed or will cause a color change in overlays</li>
<li> Used 'ChangeMask' to implement the "-layers" method "OptimizeTransparency" to improve the compressibility of frame optimized GIF animations. See IM Examples... ../Usage/anim_opt/#opt_trans</li>
<li> Fixed two memory leaks in wand/magick-image.c and magick/stream.c and made some minor changes to the GIF coder to make reading and pinging images faster (patch provided by mstemm@cloud...).</li>
<li> Improve configure script to better support Ghostscript under Mac OSX ( reference https://imagemagick.org/discourse-server//viewtopic.html?t=8557).</li>
<li> Force a virtual pixel method of Tile for GetFillColor() and GetStrokeColor().</li>
<li> Add -reverse option to reverse the image list.</li>
<li> Escape indirect labels and comments (e.g. -label @file).</li>
<li> Added -format %C to return the image compression type.</li>
<li> Do not report channel statistics if -ping -format is specified with the identify program.</li>
<li> Add ResetImagePage() to reset the image page canvas and position.</li>
<li> Upgrade to LCMS 1.16</li>
<li> Configure Ghostscript for library or framework (reference https://imagemagick.org/discourse-server//viewtopic.html?f=2&t=8557).</li>
<li> Add -taint option to convert/mogrify to mark image as ineligible for</li>
<li> Fixed various data-driven faults (reference http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=412945). The corrupt JP2 image faults but its failing in the JP2 jas_image_decode() method, not MagickCore. The corrupt XWD image faults but its failing in the X11 XGetPixel() method, not MagickCore.</li>
<li> Use -define quantum:polarity=min-is-black or -define quantum:polarity=min-is-white to toggle the photometric interpretation for a bilevel TIFF image.</li>
<li> Fix the -auto-orient to work with an image sequence (reference https://imagemagick.org/discourse-server//viewtopic.html?t=8100).</li>
<li> Add -polaroid option to simulate a Polaroid picture.</li>
<li> Eliminate double-free bug in GradientImage().</li>
<li> Set AppendImage() matte channel only when image has matte attribute set.</li>
<li> The -crop with negative offsets do not modify the virtual canvas.</li>
<li> Caption: Given both the width and height ("-size") of the area to fill, adjust the fonts "-pointsize" until the text just filles the whole space without overflowing.</li>
<li> Generate proper Windows icon image files (patch provided by Robert M. Jansen).</li></dl></div></div>
</main><!-- /.container -->
<footerclass="magick-footer">
<divclass="container">
<p><ahref="security-policy.html">Security</a> •
<ahref="news.html">News</a>
<ahref="changelog.html#"><imgclass="d-inline"id="wand"alt="And Now a Touch of Magick"width="16"height="16"src="../images/wand.ico"/></a>