With dotnet 8 System.Drawing.Common not-supported in non-windows platform (in my case linux container). It is creating issue with our product

In our application dotnet core and dotnet framework used. Those dotnet core(dotnet 6/8) application being deployed to Linux container and it is being upgraded to dotnet 8.

Some of the known package that have this issue is Aspose.HTML, Aspose.Page, Aspose.PDF, Aspose.PDF.Drawing. All this package reference System.Drawing.Common and in our application it is being used so we get dependency on System.Drawing.Common, which works fine on Windows but break on linux container. More on this Breaking change: System.Drawing.Common only supported on Windows - .NET | Microsoft Learn

I would like to know that is there concreate plan for above nuget packages to get its update with respect to dotnet 8 and linux container or non-windows.

1 Like

@jpatciv

.NET 8.0 Support is yet to be investigated in the APIs you mentioned. However about Aspose.Pdf.Drawing, it does not have any dependency on System.Drawing.Common. It replaces it with the internal component Aspose.Drawing. Can you please explain how you noticed the System.Drawing.Common dependency in Aspose.Pdf.Drawing under Linux environment?

Furthermore, we will be collecting more information about the support and share our feedback with you shortly. We may be generating dedicated tickets for these cases and sharing the IDs here with you.

NuGet Gallery | Aspose.PDF.Drawing 24.1.0

This is the later version of Nuget reference for Aspose.PDF.Drawing. It support .net 7.0 so basically if I refernece from dotnet 8, it will use that.

image.png (26.1 KB)

@jpatciv

The main version of the Aspose.PDF for .NET library uses System.Drawing.Common. We aren’t ready to refuse to use the System.Drawing.Common in the Aspose.PDF just now. Completion switching to the use of Aspose.Drawing is planned for 2024/Q2.

However, we have Overview of Aspose.PDF.Drawing for .NET|Aspose.PDF for .NET version of Aspose.PDF. It helps to avoid numerous problems and bugs associated with using System.Drawing.Common on non-Windows platforms. Aspose.PDF.Drawing library successfully works on the Docker platform that allows you to package into a container your application.

(Aspose.PDF.Drawing contains the reference for System.Drawing.Common, but it is invoked only on Windows platforms and only for printing. Aspose.PDF.Drawing works with no error on Linux containers of Cloud and GroupDocs commands.)

Also, we are planning to publish .NET 8 version of Aspose.PDF in 2024/Q2. You can use .NET 7 version with .NET 8 environment for yet.

Thanks for reply.

The answer you provided works for Aspose.PDF alternative. ( I need to verify it but as document mention it is variant of Aspose.PDF except for one functionality where it depends on System.Drawing.)

There are other components (API) too in Aspose.Total.

  • Aspose.Page
  • Aspose.Html

Some of the API. it may not be issue if use independently but combine with other it create issue as it get higher version of System.Drawing.Common

@jpatciv,

We will evaluate and get back to you soon.

@jpatciv

For Aspose.HTML, we have opened the following new ticket(s) in our internal issue tracking system and will deliver their fixes according to the terms mentioned in Free Support Policies.

Issue ID(s): HTMLNET-5115

You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.

@jpatciv

For Aspose.Page for .NET, we have opened the following new ticket(s) in our internal issue tracking system and will deliver their fixes according to the terms mentioned in Free Support Policies.

Issue ID(s): PAGENET-566

You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.