Partager via


Programmation de graphiques dans le .NET Compact Framework

Mise à jour : novembre 2007

Vous pouvez créer des applications fiables et visuellement stimulantes à l'aide du .NET Compact Framework. Vous pouvez également utiliser l'appel de plateforme pour obtenir des effets spéciaux à partir du code natif. Dans le .NET Compact Framework version 2.0 et versions ultérieures, vous pouvez programmer des applications Direct3D. Pour plus d'informations sur DirectX et Direct3D dans le .NET Compact Framework, consultez Windows Mobile DirectX et Direct3D.

Tenez compte des points suivants lorsque vous programmez des objets graphiques dans le .NET Compact Framework :

  • Le .NET Compact Framework ne prend pas en charge GDI+. Plusieurs méthodes de la classe Graphics qui effectuent des opérations complexes de dessin, de remplissage et de transformation ne sont pas prises en charge. Les chemins d'accès, les courbes et les graphismes 2D et 3D ne sont pas pris en charge.

    Toutefois, le .NET Compact Framework prend en charge les principales primitives de dessin et les méthodes de remplissage correspondantes : ellipse, ligne, image, polygone, rectangle, chaîne et région.

  • Vous pouvez écrire le code pour les applications haute résolution. Pour plus d'informations sur la haute résolution, consultez Comment : gérer les modifications d'orientation et de résolution.

  • Seule la transparence définie par des clés de couleurs est prise en charge. La fusion alpha (fusion pixel par pixel des données de couleur de la source et de l'arrière-plan) n'est pas prise en charge. De ce fait, les paramètres colorLow et colorHigh de la méthode SetColorKey doivent indiquer la même couleur.

  • Le .NET Compact Framework et le .NET Framework complet évaluent différemment les comparaisons avec les couleurs connues. Dans le .NET Compact Framework, lorsque vous comparez une couleur connue, telle que Aquamarine, avec une couleur qui a les mêmes valeurs RVB que Aquamarine, le résultat sera identique. Le .NET Framework complet, quant à lui, évalue ces couleurs comme différentes parce que les couleurs connues contiennent des informations d'identification en plus des valeurs RVB.

  • Le .NET Compact Framework ne prend pas en charge le constructeur pour la classe Font qui utilise un objet Font existant.

  • Vous pouvez utiliser la méthode CreateGraphics uniquement sur un objet Form ou Control.

  • Si le chargement d'une image échoue, vérifiez que le fichier imgdecmp.dll se trouve dans le répertoire Windows dans le périphérique.

  • Les méthodes Clone et FromHandle de Icon sont opérationnelles sur les appareils qui exécutent Windows Mobile version 5.0. Le .NET Compact Framework prend en charge les icônes de résolution supérieure, mais pas les icônes 65536 couleurs.

  • Le .NET Compact Framework ne prend pas en charge les pinceaux à dégradé linéaire. Toutefois, vous pouvez interagir avec les fonctions natives pour réaliser des affichages dégradés. Pour obtenir un exemple, consultez Comment : afficher un remplissage dégradé.

Améliorations des vitesses de dessin

Les méthodes de codage suivantes peuvent améliorer les performances en matière de dessin lors de l'utilisation d'objets Graphics :

  • Créez uniquement un objet Graphics ou utilisez l'objet de PaintEventArgs dans la méthode OnPaint.

  • Dessinez sur une bitmap hors écran, puis dessinez la bitmap sur l'écran simultanément. Pour obtenir un exemple de code, consultez Comment : dessiner des images hors écran.

  • Redessinez uniquement les parties de l'image qui ont changé.

  • Dessinez en conservant les mêmes tailles source et de destination ; évitez tout étirement chaque fois que possible.

  • Réduisez le nombre de dessins en effectuant le suivi des éléments qui doivent être redessinés. Par exemple, lorsque vous faites glisser un curseur sur une image, il n'est pas nécessaire de redessiner l'intégralité de l'image. Redessinez plutôt uniquement la section de l'image que la position du curseur antérieure a remplacée.

Voir aussi

Autres ressources

Programmation Direct3D Mobile dans le .NET Compact Framework

Interopérabilité dans le .NET Compact Framework

Graphiques et dessins dans le .NET Compact Framework