Trasformazioni predefinite

Ogni volta che un'applicazione crea un controller di dominio e inizia immediatamente a chiamare funzioni di disegno o output GDI, sfrutta lo spazio di pagina predefinito per lo spazio del dispositivo e lo spazio del dispositivo per le trasformazioni dell'area client. Non è possibile eseguire una trasformazione dello spazio da mondo a pagina finché l'applicazione non chiama prima la funzioneSetGraphicsModeper impostare la modalità su GM_ADVANCED e quindi chiama la funzionesetWorldTransform.

L'uso di MM_TEXT (lo spazio di pagina predefinito per la trasformazione dello spazio del dispositivo) comporta un mapping uno-a-uno; ovvero, un punto specificato nello spazio pagina esegue il mapping allo stesso punto nello spazio del dispositivo. Come accennato in precedenza, questa trasformazione non viene specificata da una matrice. Viene invece ottenuto dividendo la larghezza del riquadro di visualizzazione in base alla larghezza della finestra e all'altezza del riquadro di visualizzazione in base all'altezza della finestra. Nel caso predefinito, le dimensioni del riquadro di visualizzazione sono di 1 pixel per 1 pixel e le dimensioni della finestra sono unità di 1 pagina per unità di 1 pagina.

La trasformazione da spazio dispositivo a dispositivo fisico (area client, desktop o carta della stampante) comporta sempre un mapping uno-a-uno; ovvero, un'unità nello spazio del dispositivo è sempre equivalente a un'unità nell'area client, sul desktop o in una pagina. L'unico scopo di questa trasformazione è la traduzione; garantisce che l'output venga visualizzato correttamente nella finestra di un'applicazione indipendentemente dalla posizione in cui viene spostata la finestra sul desktop.

L'unico aspetto di MM_TEXT è l'orientamento dell'asse y nello spazio pagina. In MM_TEXT, l'asse y positivo si estende verso il basso e l'asse y negativo si estende verso l'alto.