Graphics Device Interface

Un article de Wikipédia, l'encyclopédie libre.

Page d'aide sur l'homonymie Pour les articles homonymes, voir GDI.

Le terme anglais Graphics Device Interface (ou Graphical Device Interface) abrégé en GDI, qui signifie Interface des dispositifs d’affichage, est l’un des trois composants fondamentaux ou sous-systèmes du système d’exploitation Microsoft Windows.

GDI est une norme de Microsoft Windows pour la représentation d’objets graphiques ainsi que pour leur transmission aux périphériques de sortie, typiquement un écran ou une imprimante.

Sommaire

[modifier] GDI

La fonction de GDI est d’afficher des lignes, des courbes, d’obtenir le rendu des polices d’écriture, et la gestion des palettes. En revanche, il n’est pas chargé de l’affichage des fenêtres, des menus et autres, ce travail est réservé au sous-système de l’utilisateur. GDI est l’homologue de QuickDraw chez Apple.

Les capacités les plus signifiantes de GDI parmi la plupart de ses méthodes d’accès direct au matériel sont probablement ses capacités vectorielles, ainsi que sa capacité d’abstraction du matériel de sortie. Utiliser GDI permet de dessiner sur de multiples périphériques (comme des écrans ou des imprimantes) très facilement, et d’en attendre une très bonne reproduction dans tous les cas. Cette capacité est au centre de toutes les applications WYSIWYG de Microsoft Windows.

Les jeux simples qui ne demandent pas de rendus graphiques comme Freecell ou le démineur utlisent GDI. Cependant, GDI ne sait pas produire correctement des animations (pas de notion de synchronisation avec le framebuffer) et ne propose pas de rastérisation pour les jeux 3D modernes qui utilisent DirectX et parfois OpenGL, qui lui donne plus de possibilité sur le matériel aux programmeurs. Dans Windows Vista, les applications tournant sur le nouveau moteur de composition ne seront plus accélérées matérialement.

[modifier] Imprimantes GDI

Les imprimantes GDI (aussi connues sous le nom de Winprinters, s’apparentant aux Winmodems), et en particulier les imprimantes laser GDI, remplacent l'éléctronique traditionnel de l’imprimante elle-même par du logiciel sur l’ordinateur hôte.

Elles fonctionnent en transformant l'image d'origine sur l'ordinateur hôte par un format bitmap envoyé à l'imprimante. Cette méthode a deux avantages:

  • prix à l'achat : elle évite d'inclure un CPU graphique et de la RAM sur l'imprimante. À relativiser par le fait que la plupart des imprimantes GDI ont des cartouches d'encres sur-facturées par rapport au prix reel (format propriétaire).

Les désavantages sont:

  • augmentation de la charge de travail sur le PC hôte au moment de l'impression. Sur des machines récentes, cela ne pose pas de problème mais sur des plus anciennes (de 200 à 500 MHz) l'impression peut s'avérer très lente.
  • lenteurs, puisque même pour "quelques caractères", il faut parfois envoyer une page complete, l'imprimante n'effectuant aucune interprétation.
  • les imprimantes GDI n'incluent pas d'émulations dans leur firmware (ni la possibilité de les ajouter ultérieurement). Par conséquent, quand avec des imprimantes PCL ou PostScript, l'utilisateur peut configurer son driver à volonté, il peut se retrouver très limité avec une imprimante GDI.
  • les imprimantes GDI ne fonctionnent que sur des systèmes Windows
  • Elles n'utilisent aucun standard, chaque fabricant d'imprimante devant écrire son propre pilote avec ses propres règles. D'où une fiablilité beaucoup plus faible que pour les imprimantes Postscript ou PCL.

La plupart des imprimantes à jet d'encre récentes fonctionnent à base de GDI (principalement pour des questions de performances alors que les problèmes de coût sont plus liés aux imprimantes laser), mais la tendance est d'y ajouter plus de flexibilité : beaucoup fonctionnent désormais sur Mac et la communauté Linux crée de plus en plus de drivers compatibles.

[modifier] GDI+

GDI+ est un autre pilote non moins différent entre autres destiné aux plates-formes de développement telles que Visual Studio. Cette API vous offre la possibilité d'écrire sur l'écran (tracé de textes, formes, lignes, etc.)

Sous Visual Studio on l'appelle via System.Drawing, et avec, vous pouvez dessiner des formes en 2 dimensions.

Les atouts sont qu'il est puissant. Mais le gros inconvénient est sûrement que GDI (que ce soit le GDI standard ou GDI+) est assez lent.

[modifier] Vulnérabilité de GDI+

[modifier] Voir aussi

[modifier] Liens externes

Créer un livre