Начиная с релиза 2022.3 мы добавили библиотеку Stimulsoft.Drawing. Это кроссплатформенный аналог библиотеки System.Drawing для использования с фреймворками .NET Core 3.1, .NET 5.0, .NET 6.0, .NET 7.0. Для обеспечения обратной совместимости при работе на Windows с помощью специальной опции можно переключиться на использование стандартной библиотеки System.Drawing. Ниже расскажем об этом подробнее.
Для чего нужна System.Drawing?
Графическая библиотека System.Drawing основана на системной библиотеке GDI+, которая имеет некоторые ограничения:
Это всё описано на официальном сайте 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 в это значение. Например,
Для чего нужна 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.