Condividi tramite


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.

figura che mostra lo stesso testo nove volte, uno per ogni possibile posizione del punto di riferimento

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.

figura che esegue lo stesso testo due volte: prima con la spaziatura normale intercharacter, quindi con spaziatura più ampia

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 .

figura che mostra un paragrafo allineato solo a sinistra, quindi lo stesso paragrafo allineato a sinistra e a destra

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 .