Background for this release
With the release of .NET6, Microsoft decided to drop support for System.Drawing.Common on non-windows OS unless a runtime configuration is set which is a workaround not many of our users would agree to. Soon after that, they decided to completely remove this switch to support non-Windows systems. with the release of .NET7.
This left developers with a decision to choose an alternative to System.Drawing.Common library and with that in mind, moving forward with DicomObjects .NET 8 and .NETStandard 2.0 releases we have decided to completely remove ~System.Drawing.*~ library dependency from our API replacing that with a well-established cross-platform library SkiaSharp which is a very comprehensive library for rendering images supported on multiple platforms.
Breaking API changes
This obviously means that there will be some breaking changes when upgrading from an older versions of DicomObjects.Core (3.1 and 5). We have maintained the same API structure for backward compatibility except for breaking changes around these API calls that used ~System.Drawing.Bitmap~ before and will now use SkiaSharp.SKBitmap :
- All Bitmap methods return a SKBitmap object.
- Import method expects a SKBitmap parameter.
- One of the DicomImage constructor overloads expects a SKBitmap object.
Version difference
The only difference between DicomObjects .NET 8 and .NETStandard 2.0 releases is that the DICOMWeb features are missing in the .NETStandard 2.0 release due to the lack of web framework support in .NET Standard.
Please check our .NET 8 and .NETStandard 2.0 product pages for the releases, sample projects, documentation and trial keys.