Linux and MacOS Specifics
- 2 minutes to read
Enable the Drawing Engine
The DevExpress Drawing Library allows you to use the Skia-based drawing engine. Make sure that you add the DevExpress.Drawing.Skia package to your application to use the new drawing engine.
If you use the the System.Drawing.Common
package v7 and later, the Skia-based engine is enabled automatically and the libgdiplus
library is not required.
Install on Linux
Install the following operating system libraries:
sudo apt-get update
sudo apt-get install -y software-properties-common
sudo add-apt-repository 'deb http://deb.debian.org/debian sid main'
sudo apt-get update
sudo apt-get install -y libc6 -f -o APT::Immediate-Configure=0
sudo apt-get install -y libicu-dev
sudo apt-get install -y libfontconfig1
Tip
The -y
flag (yes) assumes silent installation, without asking you questions in most cases.
Note
For information on what libraries are required for the Office-based Text Editor, refer to the following document: Use Office File API on Linux (.NET Core).
Install on MacOS
Install additional operating system libraries with homebrew:
brew install mono-libgdiplus
Note
For information on what libraries are required for the Office-based Text Editor, refer to the following document: Use Office File API on macOS (.NET Core).
Docker Support
Refer to the following tutorials for instructions on how to dockerize (add to a Docker container) your ASP.NET Core application:
Make the following changes to the Dockerfile when you add the application to a Linux container:
...
FROM microsoft/aspnetcore:2.1 AS base
RUN apt-get update
RUN apt-get install -y libc6 libicu-dev libfontconfig1
...
Export Specifics on Linux and MacOS
Compatibility Mode
If the dashboard or specific dashboard items are exported to PDF or image formats, their content is saved to the Windows Metafile format, which is not supported by .NET. To overcome this limitation, set the DashboardExportSettings.CompatibilityMode property to DashboardExportCompatibilityMode.Restricted at the application startup.
using DevExpress.DashboardCommon;
// ...
public Startup(IConfiguration configuration, IHostingEnvironment hostingEnvironment) {
Configuration = configuration;
FileProvider = hostingEnvironment.ContentRootFileProvider;
DashboardExportSettings.CompatibilityMode = DashboardExportCompatibilityMode.Restricted;
}
In this case, images from the corresponding exported documents will be always rendered as bitmaps and you can export dashboard or dashboard items to PDF or image formats properly.