Since .Net 6.0 the System.Drawing library is Windows-only. For now it works when we build the project with Docker (for whatever reason that is), but it will stop working eventually.
To make this truly platform independent, we should replace System.Drawing with a platform independent library.
I've seen a bunch of options in this StackOverflow answer. I've already looked at a few of these. While there are options that try to bridge the gap between System.Drawing and these newer libraries, none of them seem to support the Bitmap/Graphic algorithm we're using right now to generate the image.
I think in the end, it'll be the best to rewrite the code step by step (e.g. method by method) and compare the new image to the one generated with that part from the old code.
I think we should go with ImageSharp. The API is completely different, but seems pretty intuitive and I like that it's all native .Net code. Although it's a mixed license, Chord Generator falls into the open source category, so we can freely use this library.