Skip to content

Image resizing exception: System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform. #21

Description

@sunsiz

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:

  1. Run the application on Linux
  2. Scale an image while uploading
  3. 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));

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions