Для чего нужна System.Drawing?
Графическая библиотека System.Drawing основана на системной библиотеке GDI+, которая имеет некоторые ограничения:
- библиотека GDI+ входит в состав не всех версий Windows;
- некоторые типы графики из библиотеки GDI+ (Font, Bitmap) не работают в Windows-службах и в приложениях ASP.NET Core;
- на платформах Linux и macOS функции GDI+ реализуются библиотекой libgdiplus, которая поддерживает не все функции GDI+, и по умолчанию не установлена в большинстве версий Linux;
- начиная с .NET 6.0 официально System.Drawing поддерживается только для операционных систем Windows.
Это всё описано на официальном сайте Microsoft.
Для решения описанных выше проблем и была создана наша библиотека Stimulsoft.Drawing, которая основана на платформо-независимых библиотеках ImageSharp и Fonts от компании SixLabors.
Где используется?
Библиотека Stimulsoft.Drawing входит в состав пакетов продуктов, где есть .NET Core-компоненты. Речь, конечно, идет о Reports.WEB и Dashboards.WEB, Reports.BLAZOR и Dashboards.BLAZOR, и Reports.ANGULAR.
Где скачать?
Загрузить пакеты продуктов вы можете с сайта нашей компании или с менеджера пакетов NuGet.
Как выбрать режим работы?
Библиотека Stimulsoft.Drawing сейчас применяется во всех наших .NET Core продуктах. По умолчанию, используется новый режим работы – свойство GraphicsEngine установлено в значение ImageSharp. Это сделано для более гибкой совместимости наших компонентов с различными операционными системами. Однако, если необходимо использовать именно стандартную библиотеку GDI+, то следует просто переустановить свойство GraphicsEngine в это значение. Например,
Stimulsoft.Drawing.Graphics.GraphicsEngine = Stimulsoft.Drawing.GraphicsEngine.Gdi
.Мы подготовили короткое видео, наглядно демонстрирующее этот процесс.
Некоторые особенности
Stimulsoft.Drawing реализует не всю функциональность стандартной библиотеки. Если во время работы появляется ошибка «The method or operation is not implemented» – значит данная функциональность ещё не реализована. В этом случае советуем переключить режим работы библиотеки на GDI, т.е. установить свойство GraphicsEngine в значение GDI.
Stimulsoft.Drawing реализует не всю функциональность стандартной библиотеки. Если во время работы появляется ошибка «The method or operation is not implemented» – значит данная функциональность ещё не реализована. В этом случае советуем переключить режим работы библиотеки на GDI, т.е. установить свойство GraphicsEngine в значение GDI.