ChartDirector for .NET 7.1 Release Notes
This document describes the enhancements in ChartDirector for .NET 7.1 compared to 7.0. For
other versions of ChartDirector, please refer to the
release notes
archive.
What's New
-
ChartDirector for .NET 7.0 supports cross platform usage, but only up to .NET 6. It is
because in .NET 7, Microsoft discontinued the .NET graphics library System.Drawing.Common
for non-Windows usage. As ChartDirector for .NET 7.0 depends on that library, it can no
longer support non-Windows usage on .NET 7.
-
The ChartDirector for .NET 7.1 NuGet package now includes a ChartDirector edition that
uses an alternative graphics library SkiaSharp distributed by Microsoft. For cross
platform projects that target .NET 5 or later, Visual Studio will automatically use the
SkiaSharp ChartDirector in the NuGet package. There is no change for projects that are
Windows only or target earlier .NET versions.
Behaviour Changes
- As explained in the previous section, for cross platform projects that targets .NET 5
or later, the graphics library will switch to SkiaSharp for compatibility with newer
.NET versions. Due to the change, there will be slight changes in the appearance of text.
This is usually not noticible.
*** Note ***: If your
project is a web application and it is not configured to target Windows only, Visual
Studio will assume it is cross platform, even though you only use it on Windows. It means
the project will switch to SkiaSharp if it targets .NET or later.
- If SkiaSharp is used instead of System.Drawing.Common, ChartDirector APIs that reference
classes in System.Drawing.Common will become unavailable. For example,
"BaseChart.makeImage" which returns the chart as an System.Drawing.Image object, will
become unavailable. This should not affect most programs, because ChartDirector API that
references System.Drawing.Common are designed for Windows Forms and WPF applications.
They are Windows only (Microsoft only supports Windows Forms and WPF on Windows), and
will continue to use System.Drawing.Common.
- SkiaSharp supports a wide range of OS and different types of Linux. However, the standard
SkiaSharp NuGet package from Microsoft only includes Windows and macOS support, which is
sufficient for software development on Windows or macOS. To deploy your application to
Linux or other OS, you would need to add extra NuGet packages for the "SkiaSharp Assets"
for those OS. Please refer to the Installation section of ChartDirector for .NET
documentation for details.
Upgrade Considerations
-
ChartDirector for .NET 7.1 is designed to be compatible with previous versions of ChartDirector
for .NET, which means existing code should continue to run. To upgrade to ChartDirector for .NET
7.1, simply replace the previous ChartDirector for .NET NuGet package with the ChartDirector for
.NET 7.1 NuGet package in your project.
-
If your project is cross platform and targets .NET 5 or later, when you change the ChartDirector
for .NET 7.1 NuGet package, Visual Studio will choose the SkiaSharp ChartDirector, which does not
automatically include Linux support. To support Linux, you would need to add an extra NuGet
package for the "SkiaSharp Assets" for Linux to your project.