Skip to content

Releases: dlemstra/Magick.NET

Magick.NET 14.8.0

13 Aug 05:47
28ee123
Compare
Choose a tag to compare

What's Changed

  • Added Sf3 to MagickFormat.
  • Added Gravity overload to the Splice method (#1881).
  • Added TrimMemory to the ResourceLimits (#1854).

Library updates:

  • ImageMagick 7.1.2-1 (2025-08-12)
  • exr 3.3.5 (2025-07-26)
  • ffi 3.5.1 (2025-06-10)
  • fontconfig 2.17.1 (2025-07-02)
  • gdk-pixbuf 2.43.3 (2025-06-29)
  • jpeg-turbo 3.1.1 (2025-06-10)
  • pixman 0.46.4 (2025-07-20)
  • png 1.6.50 (2025-07-02)
  • webp 1.6.0 (2025-07-09)
  • xml 2.14.5 (2025-07-10)
  • zip 1.11.4 (2025-05-23)

Full Changelog: 14.7.0...14.8.0

Magick.NET 14.7.0

13 Jul 19:12
1658b36
Compare
Choose a tag to compare

What's Changed

  • Added extra overload to the Resize method that allows specifying the filter (#1819).
  • Allow reading of clip paths without a name and give them a numeric name that can be used by ImageMagick (#1814).
  • Use the ArrayPool API in .NET Standard 2.1 or later to reduce the creation of LOH objects (#1812).
  • Allow modification of X and Y in the PointD struct (#1856).
  • Improved parsing of a geometry in the MagickGeometry class (#1855).
  • Added Icn to MagickFormat.

Related changes in ImageMagick since the last release of Magick.NET:

Library updates:

  • ImageMagick 7.1.2-0 (2025-07-13)
  • aom 3.12.1 (2025-04-11)
  • de265 1.0.16 (2025-05-04)
  • deflate 1.24.0 (2025-05-11)
  • ffi 3.4.8 (2025-04-10)
  • harfbuzz 11.2.1 (2025-05-15)
  • heif 1.20.1 (2025-07-02)
  • lzma 5.8.1 (2025-04-03)
  • openexr 3.3.3 (2025-03-24)
  • pixman 0.46.0 (2025-04-30)
  • png 1.6.48 (2025-04-30)
  • raw 0.22.0-Devel202502 (2024-02-24)
  • xml 2.14.3 (2025-05-13)

Full Changelog: 14.6.0...14.7.0

Magick.NET 14.6.0

31 Mar 19:46
f6df648
Compare
Choose a tag to compare

What's Changed

  • Added PhaseCorrelation and DotProductCorrelation to ErrorMetric.
  • Added MaxBayerPatternPixels, MaxChildrenPerBox, MaxComponents, MaxIlocExtentsPerItem, MaxItems, MaxNumberOfTiles and MaxSizeEntityGroup to the HeicReadDefines (#1807).
  • Implemented an optimization of the ToBitmap method based upon ideas from (#1777).

Related changes in ImageMagick since the last release of Magick.NET:

  • Also print the requested sizes in the error message when width or height exceeds the limits (#1798).
  • mime:type is not automatically injected, you must request it.
  • Optimized Oklab and JzAzBz colorspace transformation
  • Support epoch() and magicktime() FX functions

Library updates:

  • ImageMagick 7.1.1-46 (2025-03-18)
  • aom 3.12.0 (2025-02-07)
  • cairo 1.18.4 (2025-03-08)
  • harfbuzz 10.4.0 (2025-03-01)
  • heif 1.19.7 (2025-03-03)
  • openh264 2.6.0 (2025-02-12)
  • png 1.6.47 (2025-02-18)
  • xml 2.13.6 (2025-02-18)

Full Changelog: 14.5.0...14.6.0

Magick.NET 14.5.0

25 Feb 07:56
0e6c263
Compare
Choose a tag to compare

What's Changed

  • Added ToWriteableBitmapWithDensity and changed the default DPI to 96 (#1781)
  • Use CallerArgumentExpressionAttribute in throw helpers (#1788)
  • Added CAT02LMSC to ColorSpace.

Related changes in ImageMagick since the last release of Magick.NET:

  • Improved error message when reading or writing png data files.
  • No longer set TIFFTAG_STRIPBYTECOUNTS to fix the issue reported in ImageMagick/ImageMagick#7917.
  • Increased accuracy for XYZ color conversion.
  • Compensate for any NAN's in the Jzazbz colorspace transformation
  • Added extra information to the reported error when the width or height exceed the limits.

Library updates:

  • ImageMagick 7.1.1-44 (2025-02-22)
  • deflate 1.23.0 (2024-12-15)
  • ffi 3.4.7 (2025-02-08)
  • harfbuzz 10.2.0 (2025-01-11)
  • jpeg-turbo 3.1.0 (2024-12-12)
  • lcms 2.17.0 (2025-02-09)
  • lzma 5.6.4 (2025-01-23)
  • openh264 2.5.0 (2024-11-08)
  • openjpeg 2.5.3 (2024-12-09)
  • png 1.6.46 (2025-01-23)
  • raw 0.22.0-Devel202403 (2024-03-30)
  • webp 1.5.0 (2024-12-20)
  • zip 1.11.3 (2025-01-20)

New Contributors

Full Changelog: 14.4.0...14.5.0

Magick.NET 14.4.0

03 Jan 17:41
37cd51b
Compare
Choose a tag to compare

What's Changed

  • Added missing interface inheritance (#1776).

Full Changelog: 14.3.0...14.4.0

Magick.NET 14.3.0

27 Dec 20:18
058ead1
Compare
Choose a tag to compare

What's Changed

  • Make sure FrameCount is 1 when reading a MagickImage (#1761).
  • Make the constructor of ColorProfile that has a name obsolete and only use icc as the name in the future.
  • Fixed memory leak with the return value of MagickImage.FormatExpression.
  • Added missing interface inheritance (#1776).
  • Created Magick.NET.AvaloniaMediaImaging (#1743).

Related changes in ImageMagick since the last release of Magick.NET:

  • Make sure we can write jpeg files with an exif profile that has a length of 65533 (#1764).
  • Move jpeg specific exif detection of profiles with the name app1 to a more generic spot (#1766).

Library updates:

  • ImageMagick 7.1.1-43 (2024-12-22)
  • aom 3.11.0 (2024-11-14)
  • heif 1.19.5 (2024-11-19)
  • jpeg-xl 0.11.1 (2024-11-26)
  • pixman 0.44.2 (2024-12-03)
  • xml 2.13.5 (2024-11-12)

Full Changelog: 14.2.0...14.3.0

Magick.NET 14.2.0

17 Nov 14:28
5c5da06
Compare
Choose a tag to compare

What's Changed

  • Added MagicKernelSharp2013 and MagicKernelSharp2021 to FilterType.
  • Fixed MagickCorruptImageErrorException with iOS 18 HEIC (#1753)

Related changes in ImageMagick since the last release of Magick.NET:

  • Improved decoding speed of the jp2 decoder by storing some values that won't change per image or row. (#1748)
  • The extra_samples should not be subtracted from the samples_per_pixel when calculating the padding in the tiff coder.

Library updates:

  • ImageMagick 7.1.1-41 (2024-11-16)
  • openexr 3.3.2 (2024-11-11)
  • harfbuzz 10.1.0 (2024-11-05)
  • heif 1.19.3 (2024-11-11)
  • pixman 0.44.0 (2024-11-05)

Full Changelog: 14.1.0...14.2.0

Magick.NET 14.1.0

11 Nov 18:56
590a64a
Compare
Choose a tag to compare

What's Changed

  • Changed the implementation of how the AnyCPU implementation calls the native methods and throw an exception when an unsupported architecture is detected.
  • No longer throw an argument exception for a negative bias value in AdaptiveThreshold (#1717)
  • Added CloneArea to IMagickImage that will replace the Clone overload with a MagickGeometry.
  • Added CloneAndMutate to IMagickImage that can be used to efficiently clone and mutate an image (#1577).
  • Enabled trim analyzer for net8.0

Related changes in ImageMagick since the last release of Magick.NET:

Library updates:

  • ImageMagick 7.1.1-40 (2024-11-09)
  • cairo 1.18.2 (2024-09-01)
  • deflate 1.22.0 (2024-10-05)
  • imath 3.1.12 (2024-09-11)
  • fribidi 1.0.16 (2024-09-25)
  • harfbuzz 10.0.1 (2024-09-24)
  • heif 1.19.1 (2024-11-01)
  • jpeg-xl 0.11.0 (2024-09-13)
  • lzma 5.6.3 (2024-10-01)
  • openexr 3.3.1 (2024-10-09)
  • png 1.6.44 (2024-09-12)
  • raqm 0.10.2 (2024-09-23)
  • raw 0.21.3 (2024-09-24)
  • tiff 4.7.0 (2024-09-11)
  • xml 2.13.4 (2024-09-18)
  • zip 1.11.2 (2024-10-31)

New Contributors

Full Changelog: 14.0.0...14.1.0

Magick.NET 14.0.0

06 Sep 16:56
f815244
Compare
Choose a tag to compare

Breaking changes in Magick.NET:

  • Removed netstandard21 support and changed this to net8.0 instead.
  • IMagickImage:
    • Removed the EncodingGeometry, IsDisposed.
    • Removed the FormatInfo property (use MagickFormatInfo.Create(image.Format) instead).
    • Removed the ChromaBluePrimary, ChromaGreenPrimary, ChromaRedPrimary, ChromaWhitePoint properties (use Chromaticity instead).
    • Removed the Distort overload that had both a DistortMethod and IDistortSettings because the settings now contain a DistortMethod property.
    • Removed the Deskew overload that had IDeskewSettings and renamed it to DeskewAndCrop because that was the only setting. And this also means that IDeskewSettings and DeskewSettings have been removed from the library.
    • Renamed Map to Remap.
    • Renamed RePage to ResetPage.
    • Removed all Morphology overloads and only keep the method that uses MorphologySettings.
    • The Interlace property is now readonly and MagickSettings.Interlace should be used to set this setting.
    • The ColorType property no longer returns the value of the MagickSettings.
    • Return IMagickImage instead of double in the Compare method overloads that had an IMagickImage and changed the double return value to an out param instead.
    • Changed the default colorspaces for PerceptualHash from sRGB and HCLp to XyY and HSB.
  • IMagickImageCollection:
    • Renamed Map to Remap.
    • Renamed RePage to ResetPage.
  • IChannelPerceptualHash:
    • Removed SrgbHuPhash and HclpHuPhash (HuPhash(colorspace, index) should be used instead).
  • IEightBimValue:
    • Removed the ID property (Id should be used instead)
  • IExifProfile:
    • The CreateThumbnail method is no longer be available for the netstandard20 target.
  • IImageProfile:
    • Removed GetData (ToByteArray or ToReadOnlySpan should be used instead).
    • The ToByteArray method will no longer return null.
  • IPixelCollection:
    • Removed GetIndex (GetChannelIndex should be used instead).
  • Channels:
    • Removed Default, Grays and Sync.
  • CompareSettings:
    • Made the ErrorMetric property mandatory (through constructor) and immutable.
  • ComplexSettings:
    • Made the ComplexOperator property mandatory (through constructor) and immutable.
  • DngReadDefines
    • Removed the UseAutoWhitebalance property (UseAutoWhiteBalance should be used instead).
    • Removed the UseCameraWhitebalance property (UseCameraWhiteBalance should be used instead).
  • DdsWriteDefines:
    • Removed the Mipmaps property (MipmapCount should be used instead).
  • DrawableComposite:
    • All constructors now require specifying the CompositeOperator.
  • DrawablePushPattern:
    • Removed the ID property (Id should be used instead).
  • ExifTag:
    • Corrected type of TimeZoneOffset to short[].
  • LogEventArgs:
    • The Message property will no longer return null.
  • OpenCLKernelProfileRecord
    • Removed the AverageDuration property.
  • OrientationType:
    • Removed LeftBotom value (LeftBottom should be used instead).
  • TiffReadDefines:
    • Removed the IgnoreExifPoperties property (IgnoreExifProperties should be used instead).
  • WebPWriteDefines:
    • Removed the NearLossless property because this functionality was removed from ImageMagick.
  • Added the following namespaces and moved classes/interfaces to these namespaces:
    • ImageMagick.Colors (contains all ColorCMYK, ColorMono, etc. classes)
    • ImageMagick.Drawing (contains all Drawable and Path classes and interfaces)
    • ImageMagick.Factories (contains all Factory classes and interfaces)
  • Made all Drawable and Path classes immutable.
  • Renamed LogEvents to LogEventTypes.
  • Replaced IReadOnlyCollection with IReadOnlyList in the following classes: DrawableBezier, DrawablePath, EightBimProfile, ExifProfile, IptcProfile, MagickException, MagickImage, MagickNET, OpenCL, OpenCLDevice,
  • Reordered enum values in MagickFormat and PixelMapping.
  • Changed properties/arguments/return types that cannot be negative from int to uint and from long to ulong.

Changes in Magick.NET:

  • Added DistortMethod to the IDistortSettings.
  • Added ARGB and CMYKA to PixelMapping.
  • Corrected default channels for the Fx method.
  • Added DisplayP3, Adobe98, ProPhoto, Oklab and Oklch to ColorSpace.

Related changes in ImageMagick since the last release of Magick.NET:

Library updates:

Full Changelog: 13.10.0...14.0.0

Magick.NET 13.10.0

17 Jul 15:31
76b741d
Compare
Choose a tag to compare

What's Changed

  • Also don't write a byte order mark when converting a XDocument or IXPathNavigable to a XmpProfile (#1652)
  • Fix typos in XML documentation comments by @cordeiro-rubens (#1659)
  • Corrected casing for UseAutoWhiteBalance and UseCameraWhiteBalance in the DngReadDefines.
  • Fix ImageFormat equality comparison by @midare160 (#1668)
  • Include X and Y in ToString when it is specified in one of the constructors of MagickGeometry (#1674).
  • Added support for performing an Fx operation on a MagickImageCollection (#1616).
  • Add PngWriteDefines to Magick.NET by @cordeiro-rubens in (#1661)

Related changes in ImageMagick since the last release of Magick.NET:

  • Tweaks to improve error reporting in the webp coder.
  • Correct rounding error when setting the frame delay in the webp decoder (ImageMagick/ImageMagick#7371)
  • Fixed issue where the color profile was not copied to all the images that would cause issues when converting from PSD to PSD and changing the colorspace with a profile.
  • Correct overwriting read_info->filename to make sure we don't leave temporary files behind (ImageMagick/ImageMagick#7389).
  • Get the correct width and height when heic:preserve-orientation is set to true.
  • Set heic image orientation using transform information.
  • Also set the DNG properties when pinging the image.
  • Smooth the rendering of an ellipse (ImageMagick/ImageMagick#7465)

Library updates:

  • ImageMagick 7.1.1-35 (2024-07-14)
  • aom 3.9.1 (2024-06-10)
  • fribidi 1.0.15 (2024-06-07)
  • harfbuzz 9.0.0 (2024-06-27)
  • heif 1.18.0 (2024-07-10)
  • highway 1.2.0 (2024-05-31)
  • jpeg-xl 0.10.3 (2024-06-27)
  • lzma 5.6.2 (2024-05-29)
  • raw 0.21.2 (2024-03-29 Snapshot 202403)
  • xml 2.13.2 (2024-07-04)

New Contributors

  • @cordeiro-rubens made their first contribution in #1659
  • @midare160 made their first contribution in #1668

Full Changelog: 13.9.1...13.10.0