web-dev-qa-db-fra.com

Impossible de trouver la classe Bitmap dans la bibliothèque de classes (.NET Standard)

Je veux créer une bibliothèque de classes (.NET Standard) et j'utilise System.Drawing, mais j'obtiens l'erreur:

CS0246 C# The type or namespace name 'Bitmap' could not be found 
(are you missing a using directive or an Assembly reference?)

J'utilise .NET Standard 2.0.

14
IIRawCodeII

Mise à jour

Depuis le mois dernier (mai 2018), Microsoft a une version de production (auparavant c'était un aperçu/RC) de System.Drawing.Common, un package NuGet qui remplace les deux versions de CoreCompat.System.Drawing paquet. Cela devrait être utilisé à l'avenir.


Pour l'instant, vous pouvez utiliser le package nuget CoreCompat.System.Drawing .

Nous l'utilisons dans le code de production depuis quelques mois (en utilisant des captures d'écran vidéo) et cela fonctionne très bien. Il s'agit essentiellement d'un remplacement de slot-in pour System.Drawing.

17
John

Je suis l'auteur de CoreCompat.System.Drawing. Si vous êtes sur .NET Core 2.0, je vous recommande de passer à System.Drawing.Common à la place, qui est l'implémentation maintenue par Microsoft de System.Drawing pour .NET Core.

Si vous êtes sous Linux ou macOS, assurez-vous d'installer libgdiplus. Sous macOS, exécutez brew install mono-libgdiplus; sous Linux, votre gestionnaire de paquets devrait vous fournir un paquet libgdiplus.

32
Frederik Carlier