Aspose.Slides Linux Container - System.PlatformNotSupportedException: System.Drawing.Common Is Not Supported on non-Windows Platforms

@andrey.potapov, thanks for confirming.

Just for my understanding, were you able to replicate all of the issues?

I understand time estimation is not included in free support services. Just want to get your thoughts on the issue. Does this seem like it can be resolved quickly, or would it be more of a feature change? Understanding the severity of these issues might be helpful in recalibrating the timeline on our end or possibly finding an alternative.

Out of curiosity, are these issues associated with one particular version? Is there a version where these issues may not come up?

@sudi.karmacharya,
Thank you for your questions. Yes, I replicated all the issues you described. Our developers have started to investigate the case.

The Dockerfile you provided uses a universal base image.

FROM debian:10

This is a generic image that supports multiple architectures, depending on how it’s pulled or built.
Could you please specify which architecture was used to build this Docker image and which host OS it was executed on?
This information will help us identify a possible solution to the issue.

Thanks for the quick reply, @andrey.potapov .

I added a platform info in the docker file for linux/amd64. The host OS would be OSX, Sonoma 14.6.1 on an ARM-based arch.

Just an FYI (not sure if this changes anything on your end), I tried approach 2 with linux/amd64 in dockerfile. This generates a new error. See below:

Unhandled exception: System.TypeInitializationException: The type initializer for 'hrew an exception.
 ---> System.DllNotFoundException: Unable to load shared library 'libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23' or one of its dependencies. In order to help diagnose loading problems, consider using a tool like strace. If you're using glibc, consider setting the LD_DEBUG environment variable: 
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.14/libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23.so: cannot open shared object file: No such file or directory
libfontconfig.so.1: cannot open shared object file: No such file or directory
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.14/liblibaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23.so: cannot open shared object file: No such file or directory
/application/app/DocumentService/bin/Release/net8.0/liblibaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23.so: cannot open shared object file: No such file or directory
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.14/libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23: cannot open shared object file: No such file or directory
/application/app/DocumentService/bin/Release/net8.0/libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23: cannot open shared object file: No such file or directory
/usr/share/dotnet/shared/Microsoft.NETCore.App/8.0.14/liblibaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23: cannot open shared object file: No such file or directory
/application/app/DocumentService/bin/Release/net8.0/liblibaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23: cannot open shared object file: No such file or directory

   at System.Runtime.InteropServices.NativeLibrary.LoadLibraryByName(String libraryName, Assembly assembly, Nullable`1 searchPath, Boolean throwOnError)
   at .(String , Assembly, Nullable`1 )
   at System.Runtime.InteropServices.NativeLibrary.LoadLibraryCallbackStub(String libraryName, Assembly assembly, Boolean hasDllImportSearchPathFlags, UInt32 dllImportSearchPathFlags)
   at .d(Int32 d, Int32 v, Int32 c, IntPtr& t)
   at System.Drawing.Bitmap..ctor(Int32 width, Int32 height, PixelFormat format)
   at System.Drawing.Bitmap..ctor(Int32 width, Int32 height)
   at ctor()
   --- End of inner exception stack trace ---
   at tor(Presentation )
   at tor(TextFrame )
   at Aspose.Slides.TextFrame..ctor )
   at Aspose.Slides.AutoShape()
   at .(Presentation )
   at .(Presentation )
   at Aspose.Slides.Presentation..ctor(LoadOptions loadOptions)
   at Aspose.Slides.Presentation..ctor()

I have Aspose Words and Aspose.Slides.NET6.CrossPlatform packages in the project file.

Thank you.

@sudi.karmacharya,
Thank you for the additional information. I’ve forwarded it to our developers.

@andrey.potapov, I tried the solution listed in Unable to Load Shared Library ‘libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23’ - #8 by andrey.potapov. Adding the libraries listed

libfontconfig1 \
libfreetype6 \
libexpat1 \
libpng16-16

resolved the issue for approach 2.

However, I am facing another issue - this one is regarding the metered license.

I have metered license set for Words and Slides in the same file.

using WordsMetered = Aspose.Words.Metered;
using SlidesMetered = Aspose.Slides.Metered;

public static void SetAsposeWordsMeteredLicense()
    {
         ......
        // public and private keys set to string variables using env variables
         WordsMetered wordsMetered = new WordsMetered();
         wordsMetered.SetMeteredKey(publicKey, privateKey);
    }

public static void SetAsposeSlidesMeteredLicense()
    {
         ......
        // public and private keys set to string variables using env variables
         SlidesMetered slidesMetered = new SlidesMetered();
         slidesMetered.SetMeteredKey(publicKey, privateKey);
    }

I get the Authentication failed error only for Aspose slides. Just to experiment, I set keys only for Aspose Slides in this file, and the authentication still fails.

How do I go about and fix this?

Thank you.

@sudi.karmacharya,

Thank you for the information. I’ve forwarded it to our developers.

Please follow the instructions below to send us your metered license keys. We will check it as soon as possible.
How to Send License File to Support Team

I’ve sent the keys privately. Let me know if you are able to see it on your end.

@sudi.karmacharya,
I’ve received your license keys. If I understand you correctly, the license keys are for Aspose.Total. Could you please confirm this?

Yup, the license keys are for Aspose.Total, @andrey.potapov

@sudi.karmacharya,
Thank you for the confirmation. I’ve reproduced the problem with the license keys.

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): SLIDESNET-44935

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.

@sudi.karmacharya,
Could you please share the Order ID? We will try generating new keys for you.

Hi @andrey.potapov, is the issue with the keys?

Would the regeneration invalidate the existing keys? Would you like me to send it over privately?

Thanks,
Sudi

@sudi.karmacharya,
Unfortunately, I cannot answer your questions yet. We need to check your current order first. You can send it to my email.

Where can I find your email, @andrey.potapov ?

@sudi.karmacharya,
I’ve made this forum thread private. You can write your Order ID here.

@sudi.karmacharya,
Thank you for the information. I’ve forwarded it to our managers.

@sudi.karmacharya,
If you don’t mind, we will issue a license in the old format for you, and the existing one will be invalidated.
Alternatively, we’ll need 2–3 months to complete the switch to the new Metered API.

@andrey.potapov , I feel like I am out of sync here.

Why is a new license being issued at this time? What is the issue with the existing license?

Alternatively, we’ll need 2–3 months to complete the switch to the new Metered API.

What is the new Metered API, and how would that help with the issue in hand?

Thank you in advance.

@sudi.karmacharya,
We are currently experiencing some issues with metered licenses for Aspose.Slides. We had planned to update the Metered API (the issue you are experiencing will be resolved) but cannot do so shortly. So we offer to replace your license keys with others. Do you agree?

@andrey.potapov , yes please! that would be great.