System.Drawing.Common is deprecated on non-Windows platforms
See original GitHub issueHello, I work on the .NET Libraries team, and I saw that this library has a lot of usage in the community and depends on System.Drawing.Common for xplat scenarios.
We made the decision to make System.Drawing.Common
a windows only library starting .NET6+ due to a lot of reasons after a long discussion. You can see more details here:
https://github.com/dotnet/designs/blob/a15a8c7a324c482c5e38b73e46c2afe56f6bd504/accepted/2021/system-drawing-win-only/system-drawing-win-only.md
Also: https://github.com/dotnet/docs/issues/25257
We wanted to reach out so that you could react to this changes when .NET 6 is released. Also if you have any questions/concerns please do let us know at https://github.com/dotnet/runtime
What is the recommended action to still support winforms/wpf scenarios for example?
You can mark the APIs that need to use System.Drawing.Common to support winforms/wpf as windows only using the SupportedOSPlatform("windows")
annotation, and then add new APIs that use another library like ImageSharp
or `SkiaSharp.
System.Drawing.Common is deprecated on non-Windows platforms
Issue Analytics
- State:
- Created 2 years ago
- Reactions:1
- Comments:38 (17 by maintainers)
Top GitHub Comments
Our fork, using ImageSharp instead of System.Drawing, is working fine so far and is already deployed in production. Sorry for not having the time to clean up a few things and creating a pull request yet. I’ll do that as soon as possible.
@tonyqus I have been migrating our company solution from System.Drawing to ImageSharp. I think it’s one of the most straightforward options to choose, it’s fully made with .NET code, and it does not have any external dependencies to binaries in the system like SkiaShap or Maui have,
You will start by adding these two package references:
Documentation on the image handling: https://docs.sixlabors.com/articles/imagesharp/gettingstarted.html Documentation on the graphics drawing: https://docs.sixlabors.com/articles/imagesharp.drawing/gettingstarted.html
Let me know if you encounter any issues while migrating.