Partager via


Transformations par défaut

Chaque fois qu’une application crée un contrôleur de domaine et commence immédiatement à appeler des fonctions de dessin ou de sortie GDI, elle tire parti des transformations de l’espace de page par défaut en espace appareil et de l’espace appareil en zone client. Une transformation d’espace monde à page ne peut pas se produire tant que l’application n’a pas d’abord appelé la fonction SetGraphicsMode pour définir le mode sur GM_ADVANCED, puis la fonction SetWorldTransform .

L’utilisation de MM_TEXT (transformation par défaut de l’espace de page en espace appareil) entraîne un mappage un-à-un ; autrement dit, un point donné dans l’espace de page est mappé au même point dans l’espace de l’appareil. Comme mentionné précédemment, cette transformation n’est pas spécifiée par une matrice. Au lieu de cela, elle est obtenue en divisant la largeur de la fenêtre par la largeur de la fenêtre et la hauteur de la fenêtre par la hauteur de la fenêtre. Dans le cas par défaut, les dimensions de la fenêtre sont de 1 pixel par 1 pixel et les dimensions de fenêtre sont de 1 unité de page par unité de page.

La transformation de l’espace de l’appareil en espace physique (zone cliente, bureau ou papier d’imprimante) entraîne toujours un mappage un-à-un ; autrement dit, une unité dans l’espace de l’appareil équivaut toujours à une unité dans la zone cliente, sur le bureau ou sur une page. Le seul objectif de cette transformation est la traduction ; elle garantit que la sortie s’affiche correctement dans la fenêtre d’une application, quel que soit l’emplacement où cette fenêtre est déplacée sur le bureau.

Le seul aspect unique de MM_TEXT est l’orientation de l’axe des Y dans l’espace de page. Dans MM_TEXT, l’axe Y positif s’étend vers le bas et l’axe Y négatif s’étend vers le haut.