Question

Existe-t-il une bibliothèque alternative de manipulation d'images pour .net ?Je préférerais quelque chose de géré et open source.

Je pose cette question pour deux raisons :

  1. J'ai rencontré des erreurs GDI+ difficiles à déboguer avec System.Drawing dans le passé
  2. J'ai lu que l'utilisation de System.Drawing dans les applications Web asp.net n'est pas prise en charge à 100 %.

Merci!

modifier:clarification, je sais que System.Drawing peut fonctionner avec des applications Web asp.net - je l'ai utilisé dans le passé.Je me demande vraiment s'il existe des bibliothèques de manipulation d'images gérées pour .net :)

Était-ce utile?

La solution

Je ne connais aucune bibliothèque de dessins 2D entièrement gérée, gratuite ou open source (il semble y en avoir quelques-unes disponibles dans le commerce, mais OSS est la voie à suivre).Cependant, vous pourriez examiner les liaisons Mono au Caire.

Cairo est une API de dessin 2D indépendante de la plateforme.Vous pouvez trouver plus d'informations à ce sujet sur la page d'accueil du Caire.Le Page Wikipédia du Caire a également de bonnes informations.

Cairo est également assez largement utilisé dans le monde Open Source, ce qui en dit long sur sa robustesse.Mozilla, Webkit et Mono l'utilisent tous, entre autres.Ironiquement, Mono l'utilise en fait pour soutenir son implémentation System.Drawing...allez comprendre.

Il pourrait également y avoir un moyen d'utiliser l'implémentation System.Drawing de Mono en remplacement de l'implémentation de Microsoft, même si je ne suis pas sûr de savoir comment ni si cela fonctionnerait.Je commencerais probablement par remplacer la référence System.Drawing.dll par la version de Mono, puis j'essaierais de gérer les erreurs.

Autres conseils

Tu devrais examiner les bibliothèques WPF Imaging livrées avec .NET 3.0.Ils sont optimisés et robustes (utilisés pour faire fonctionner Aero, vous savez donc qu'ils sont efficaces).Ils ne dépendent pas du répartiteur WPF, sont facilement extensibles et officiellement pris en charge.Que pourrais-tu vouloir de plus?

Preuve anecdotique n°1 :J'ai utilisé GDI+ pour la création d'images à la volée dans ASP.NET sans problème.Je ne suis même pas sûr de la nature des problèmes.

En ce qui concerne (1), la plupart des erreurs difficiles à déboguer sont dues à la non-fermeture des handles ouverts (Dispose() dans les zones gérées).Je suis curieux de savoir où vous avez entendu (2).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top