Describe the bug
When running on Linux the Scale method throw: "Image resizing exception: System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform." exception.
As in docs explained I have installed libc6-dev and libgdiplus libraries.
There is also another issue if path is contains backslash like this:
Path.Combine(webRootPath, @"images\artist");
it will throw directory not found exception on Linux, as a workaround I have changed the backslash to forward slash it worked.
To Reproduce
Steps to reproduce the behavior:
- Run the application on Linux
- Scale an image while uploading
- If not debugging or on server you can see the errors in logs.
Expected behavior
***** Image resizing exception: System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform.
at System.Drawing.Image.FromStream(Stream stream)
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
- OS: Debian 5.10.209-2 (2024-01-31) x86_64 GNU/Linux
- Browser Chrome
- Version LazZiya.ImageResize 4.1.4
Smartphone (please complete the following information):
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
Additional context
Example code block looks like this:
var uploads = Path.Combine(webRootPath, @"images/artist");
var fileName = file.FileName;
var namePart = fileName.Remove(fileName.LastIndexOf('.'));
var extension = fileName.Substring(fileName.LastIndexOf('.'));
using var fileStream = new FileStream(Path.Combine(uploads, fileName), FileMode.Create);
file.CopyTo(fileStream);
using var img = Image.FromStream(fileStream);
img.Scale(384, 384).SaveAs(Path.Combine(uploads, namePart + "-384" + extension));
Describe the bug
When running on Linux the Scale method throw: "Image resizing exception: System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform." exception.
As in docs explained I have installed libc6-dev and libgdiplus libraries.
There is also another issue if path is contains backslash like this:
Path.Combine(webRootPath, @"images\artist");
it will throw directory not found exception on Linux, as a workaround I have changed the backslash to forward slash it worked.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
***** Image resizing exception: System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform.
at System.Drawing.Image.FromStream(Stream stream)
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
Additional context
Example code block looks like this: