備忘録

備忘録

.NET CoreでSystem.Drawingを使う

Ⅰ. はじめに

System.Drawing は WindowsのGDI+に依存している為標準の.NET Coreで利用することができません。
解決策として CoreCompat.System.Drawing を使う方法を紹介します。

Ⅱ. Windowsの場合

1. NuGet で CoreCompat.System.Drawing をインストールする

以上です。

Ⅲ. Linux/macOSの場合

1. NuGet で CoreCompat.System.Drawing をインストールする
$ dotnet add package CoreCompat.System.Drawing.v2 -v 5.2.0-preview1-r131

以上です。

以下のエラーが出る場合
Unhandled Exception:
  System.TypeInitializationException:
    The type initializer for 'System.Drawing.GDIPlus' threw an exception. --->
      System.DllNotFoundException: Unable to load DLL 'gdiplus':
        The specified module or one of its dependencies could not be found.

これを実行して下さい。

$ apt-get install -y libgdiplus