Skip to main content
All docs
V23.2

Use Reporting on Linux and macOS

  • 2 minutes to read

This article lists packages and options that are required before you use Reporting tools on Linux or macOS.

Add Common Libraries

Add the following common libraries to your application:

The .NET library
Install the .NET library of the required version.
Packaged fonts
To install font files on your machine, put them in the /usr/share/fonts folder and execute the fc-cache command to update fontconfig cache files. Refer to the following article for more information on font installation in Reporting Tools: Use Custom Fonts in Reporting
DevExpress.Pdf.SkiaRenderer and libjpeg-turbo
Add these packages for reports with embedded PDF content.
libcups
Install libcups to support printing with OpenPrinting CUPS on Linux and other Unix-like operating systems. MacOS does not requires any additional packages.

To avoid .NET 6 limitations related to the System.Drawing.Common library, specify the EnableUnixSupport option as described in the following help topic: Reporting .NET/.NET Core Limitations.

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.

The following commands configure the environment in the dockerfile:

View Example: Reporting for ASP.NET Core - How to Use the SkiaSharp-Based DevExpress Drawing Engine

RUN apt-get update
RUN apt-get install -y libc6 libicu-dev libfontconfig1

You can force Skia-based rendering even if DevExpress Reporting does not enable it automatically. Call the following method to do so:

DevExpress.Drawing.Internal.DXDrawingEngine.ForceSkia()

You can find more information about troubleshooting in the following topic: DevExpress.Drawing Library Troubleshooting.

XRPdfContent Control Specifics

The XRPdfContent control uses the CreateBitmap method. This method does not work in Linux-based environments or certain Azure hosting plans. Add the DevExpress.Pdf.SkiaRenderer NuGet package to your solution and use the Skia rendering engine on these platforms: