The KGy SOFT Drawing Libraries package offers advanced features built around System.Drawing types. Among others: - Fast direct native Bitmap data access for every PixelFormat. - High performance shape/text drawing into Bitmap instances of any pixel format, even indexed ones. - Quantizing and dithering. - Text drawing support even into indexed bitmaps. - Creating GIF animations. - Several built-in icons as well as simple access to Windows associated and stock icons. - Extracting bitmaps from multi-frame bitmaps and icons. - Creating combined icons and multi-resolution bitmaps. - Saving metafiles in EMF/WMF formats. - Advanced support for saving images as Icon, BMP, JPEG, PNG, GIF and TIFF formats. - Converting between various pixel formats preserving transparency if possible. - Useful extensions for the Icon, Bitmap, Image, Metafile and Graphics types. Application Examples: https://github.com/koszeggy/KGySoft.Drawing/tree/master/Examples Debugger Visualizers: https://github.com/koszeggy/KGySoft.Drawing.Tools Online Documentation: https://koszeggy.github.io/docs/drawing See Also: Technology-agnostic core drawing libraries: https://www.nuget.org/packages/KGySoft.Drawing.Core/ WPF specific libraries: https://www.nuget.org/packages/KGySoft.Drawing.Wpf/ UWP specific libraries: https://www.nuget.org/packages/KGySoft.Drawing.Uwp/ WinUI specific libraries: https://www.nuget.org/packages/KGySoft.Drawing.WinUI/ SkiaSharp specific libraries: https://www.nuget.org/packages/KGySoft.Drawing.SkiaSharp/
$ dotnet add package KGySoft.DrawingKGy SOFT Drawing Libraries offer advanced features for System.Drawing types such as Bitmap, Metafile, Image, Icon, Graphics.
⚠️ Warning: Version 7.0.0 introduced several breaking changes. Most importantly, the technology-agnostic and platform independent APIs have been extracted into a separated package: .
📝 Note: In .NET 7 and above this package can be used on Windows only. When targeting earlier versions, Unix/Linux based systems are also supported (if the libgdiplus library is installed).
Main highlights:
See the online help for the complete documentation or the project site for some highlighted code examples.
💡 Tip:
- Feel free to explore the application examples to see how to use KGy SOFT Drawing Libraries in various environments such as MAUI, UWP, WinForms, WinUI, WPF and Xamarin.
- For technology-agnostic solutions that can be used on any platform see the KGySoft.Drawing.Core package.
- For WPF specific solutions see the KGySoft.Drawing.Wpf package. It makes possible to obtain a managed, fast accessible bitmap data for a
WriteableBitmapinstance of any pixel format, offering all features of anIReadWriteBitmapDatafor aWriteableBitmap.- For dedicated UWP support see the KGySoft.Drawing.Uwp package.
- For dedicated WinUI support see the KGySoft.Drawing.WinUI package.
- For SkiaSharp specific solutions see the KGySoft.Drawing.SkiaSharp package. It makes possible to obtain managed, fast accessible bitmap data for
SKBitmapandSKPixmapinstances of any pixel format, offering allIReadWriteBitmapDatafeatures for them. It also offers extension methods for theSKImage,SKSurface,SKBitmap,SKPixmapandSKImageInfoclasses.- See also the KGySoft.Drawing.Tools repository, which contains debugger visualizers built on the KGy SOFT Drawing Libraries as well as a test project, which demonstrates its features.