attributi Text-Formatting
Un'applicazione può usare sei funzioni per impostare gli attributi di formattazione del testo per un contesto di dispositivo: SetBkColor, SetBkMode, SetTextAlign, SetTextCharacterExtra, SetTextColor e SetTextJustification. Queste funzioni influiscono sull'allineamento del testo, sulla spaziatura intercaracter, sulla giustificazione del testo e sui colori di sfondo e testo. Inoltre, sei altre funzioni possono essere usate per recuperare gli attributi di formattazione del testo corrente per qualsiasi contesto del dispositivo: GetBkColor, GetBkMode, GetTextAlign, GetTextCharacterExtra, GetTextColor e GetTextExtentPoint32.
Allineamento testo
Le applicazioni possono usare la funzione SetTextAlign per specificare come il sistema deve posizionare i caratteri in una stringa di testo quando chiamano una delle funzioni di disegno. Questa funzione può essere usata per posizionare intestazioni, numeri di pagina, callout e così via. Il sistema posiziona una stringa di testo allineando un punto di riferimento su un rettangolo immaginario che circonda la stringa, con la posizione del cursore corrente o con un punto passato come argomento a una delle funzioni di disegno di testo. La funzione SetTextAlign consente all'applicazione di specificare il percorso di questo punto di riferimento. Di seguito è riportato un elenco delle possibili posizioni dei punti di riferimento.
Posizione | Descrizione |
---|---|
sinistra/inferiore | Il punto di riferimento si trova nell'angolo inferiore sinistro del rettangolo. |
riga sinistra/base | Il punto di riferimento si trova all'intersezione della linea di base della cella carattere e del bordo sinistro del rettangolo. |
sinistra/superiore | Il punto di riferimento si trova nell'angolo superiore sinistro del rettangolo. |
centro/inferiore | Il punto di riferimento si trova al centro del rettangolo. |
linea centrale/base | Il punto di riferimento si trova all'intersezione della linea di base della cella carattere e del centro del rettangolo. |
centro/superiore | Il punto di riferimento si trova al centro della parte superiore del rettangolo. |
destra/inferiore | Il punto di riferimento si trova nell'angolo inferiore destro del rettangolo. |
riga destra/base | Il punto di riferimento si trova all'intersezione della linea di base della cella carattere e del bordo destro del rettangolo. |
destra/superiore | Il punto di riferimento si trova nell'angolo superiore destro del rettangolo. |
La figura seguente mostra una stringa di testo disegnata chiamando la funzione TextOut . Prima di disegnare il testo, la funzione SetTextAlign è stata chiamata per spostare il punto di riferimento in ognuna delle nove posizioni possibili.
L'allineamento di testo predefinito per un contesto del dispositivo è l'angolo superiore sinistro del rettangolo immaginario che circonda il testo. Un'applicazione può recuperare l'impostazione corrente di allineamento del testo per qualsiasi contesto del dispositivo chiamando la funzione GetTextAlign .
Spaziatura intercharacter
Le applicazioni possono usare la funzione SetTextCharacterExtra per modificare la spaziatura intercharacter per tutte le operazioni di output del testo in un contesto di dispositivo specificato. La figura seguente mostra una stringa di testo disegnata due volte chiamando la funzione TextOut . Prima di disegnare il testo la seconda volta, la funzione SetTextCharacterExtra è stata chiamata per incrementare la spaziatura intercharacter.
Il valore di spaziatura intercharacter predefinito per qualsiasi contesto del dispositivo è zero. Un'applicazione può recuperare il valore di spaziatura intercharacter corrente per un contesto del dispositivo chiamando la funzione GetTextCharacterExtra .
Giustificazione del testo
Le applicazioni possono usare le funzioni GetTextExtentPoint32 e SetTextJustification per giustificare una riga di testo. La giustificazione del testo è un'operazione comune in qualsiasi pubblicazione desktop e nella maggior parte delle applicazioni di elaborazione di parole. La funzione GetTextExtentPoint32 calcola la larghezza e l'altezza di una stringa di testo. Dopo aver calcolato la larghezza, l'applicazione può chiamare la funzione SetTextJustification per distribuire spaziatura aggiuntiva tra ognuna delle parole in una riga di testo. La figura seguente mostra due volte un paragrafo di testo stampato due volte: nel primo paragrafo il testo non è stato giustificato; nel secondo paragrafo, il testo è stato giustificato chiamando le funzioni GetTextExtentPoint32 e SetTextJustification .
Testo e colore di sfondo
Le applicazioni possono usare la funzione SetTextColor per impostare il colore del testo disegnato nell'area client delle finestre, nonché il colore del testo disegnato su una stampante a colori. Un'applicazione può usare la funzione SetBkColor per impostare il colore visualizzato dietro ogni carattere e la funzione SetBkMode per specificare come il sistema deve fondere il colore di sfondo selezionato con il colore o i colori correnti nel display video.
Il colore di testo predefinito per un contesto di dispositivo visualizzato è nero; il colore di sfondo predefinito è bianco; e la modalità di sfondo predefinita è OPACO. Un'applicazione può recuperare il colore di testo corrente per un contesto del dispositivo chiamando la funzione GetTextColor . Un'applicazione può recuperare il colore di sfondo corrente per un contesto del dispositivo chiamando la funzione GetBkColor e la modalità di sfondo corrente chiamando la funzione GetBkMode .