This project has moved. For the latest updates, please go here.

Magick.NET rewrite

Coordinator
Jan 31, 2016 at 2:43 PM
Edited Jan 31, 2016 at 2:45 PM
The last couple of months I have been busy with a huge rewrite of the Magick.NET library. I switched from C++/CLI to P/Invoke and a lot of API changes have been made. This version is now available on the development NuGet feed: https://ci.appveyor.com/nuget/Magick.NET. Please try it and let me know how this new version works for you.

Below are some of the changes:
  • The C++ Redistributable is now statically linked so there is no need to install it on your machine anymore. OpenMP support had to be dropped to make this possible.
  • Magick.NET now uses P/Invoke instead of C++/CLI to execute the code of ImageMagick. Because of this change you now only have two libraries. One .NET library and one unmanaged/native. The native library is not 'referenced' so you might need to copy it to another project manually.
  • The file name of the Magick.NET assembly now includes the Quantum depth (Q8/Q16).
  • MagickColor.Transparent has been moved to the new MagickColors class. This class contains the same colors as those that are available in System.Drawing.Color.
  • There is no longer a read/write version of the pixels of an image. This means that GetReadOnlyPixels and GetWritablePixels have been replaced by GetPixels. The Sync method has also been removed, changes to the pixels are now automatically saved to the image.
  • A lot of properties have been moved from MagickImage to the new Settings property of MagickImage. This change has been made to make it more clear that those properties are settings for other operations (e.g. drawing).
Feb 1, 2016 at 6:32 PM
I have tested this dev build and I'm very happy to report that it has resolved the issues I reported in [discussion:650379]. I'm excitedly awaiting the release of this version!