Text-Formatting atrybuty
Aplikacja może użyć sześciu funkcji, aby ustawić atrybuty formatowania tekstu dla kontekstu urządzenia: SetBkColor, SetBkMode, SetTextAlign, SetTextCharacterExtra, SetTextColori SetTextJustification. Te funkcje mają wpływ na wyrównanie tekstu, odstęp międzytypowy, uzasadnienie tekstu oraz kolory tekstu i tła. Ponadto do pobierania bieżących atrybutów formatowania tekstu dla dowolnego kontekstu urządzenia można użyć sześciu innych funkcji: GetBkColor, GetBkMode, GetTextAlign, GetTextCharacterExtra, GetTextColori GetTextExtentPoint32.
Wyrównanie tekstu
Aplikacje mogą używać funkcji SetTextAlign, aby określić, w jaki sposób system powinien umieścić znaki w ciągu tekstowym podczas wywoływania jednej z funkcji rysunku. Ta funkcja może służyć do umieszczania nagłówków, numerów stron, objaśnień itd. System umieszcza ciąg tekstu przez wyrównanie punktu odniesienia do wyimaginowanego prostokąta otaczającego ciąg z bieżącym położeniem kursora lub punktem przekazywanym jako argument do jednej z funkcji rysunku tekstu. Funkcja SetTextAlign umożliwia aplikacji określenie lokalizacji tego punktu odniesienia. Poniżej znajduje się lista możliwych lokalizacji punktu odniesienia.
Lokalizacja | Opis |
---|---|
lewy/dolny | Punkt odniesienia znajduje się w lewym dolnym rogu prostokąta. |
lewa/linia podstawowa | Punkt odniesienia znajduje się na przecięciu linii bazowej komórki znakowej i lewej krawędzi prostokąta. |
lewy/górny | Punkt odniesienia znajduje się w lewym górnym rogu prostokąta. |
środek/dół | Punkt odniesienia znajduje się w środku dolnej części prostokąta. |
linia środkowa/podstawowa | Punkt odniesienia znajduje się na przecięciu linii bazowej komórki znakowej i środka prostokąta. |
środek/góra | Punkt odniesienia znajduje się w środku górnego prostokąta. |
w prawo lub u dołu | Punkt odniesienia znajduje się w prawym dolnym rogu prostokąta. |
linia prawa/podstawowa | Punkt odniesienia znajduje się na przecięciu linii bazowej komórki znakowej i prawej krawędzi prostokąta. |
w prawo/u góry | Punkt odniesienia znajduje się w prawym górnym rogu prostokąta. |
Poniższa ilustracja przedstawia ciąg tekstu rysowany przez wywołanie funkcji TextOut. Przed narysowania tekstu funkcja SetTextAlign została wywołana w celu przeniesienia punktu odniesienia w każdej z dziewięciu możliwych lokalizacji.
Domyślne wyrównanie tekstu dla kontekstu urządzenia to lewy górny róg wyimaginowanego prostokąta otaczającego tekst. Aplikacja może pobrać bieżące ustawienie wyrównania tekstu dla dowolnego kontekstu urządzenia, wywołując funkcję GetTextAlign.
Odstępy między znakami
Aplikacje mogą używać funkcji SetTextCharacterExtra, aby zmienić odstęp międzycharakterowy dla wszystkich operacji wyjściowych tekstu w określonym kontekście urządzenia. Poniższa ilustracja przedstawia ciąg tekstu rysowany dwukrotnie przez wywołanie funkcji TextOut. Przed narysowaniem tekstu po raz drugi funkcjaSetTextCharacterExtra została wywołana, aby zwiększać odstęp międzycharakterowy.
Domyślna wartość odstępu międzycharakterowego dla dowolnego kontekstu urządzenia to zero. Aplikacja może pobrać bieżącą wartość odstępu międzycharakcyjnego dla kontekstu urządzenia, wywołując funkcję GetTextCharacterExtra.
Uzasadnienie tekstowe
Aplikacje mogą używać funkcji GetTextExtentPoint32 i SetTextJustification, aby uzasadnić wiersz tekstu. Wyrównywanie tekstu jest częstą operacją w dowolnej publikacji komputerowej i w większości edytorów tekstu. Funkcja GetTextExtentPoint32 oblicza szerokość i wysokość ciągu tekstu. Po obliczeniu szerokości aplikacja może wywołać funkcję SetTextJustification, aby rozdzielić dodatkowe odstępy między poszczególnymi wyrazami w wierszu tekstu. Poniższa ilustracja przedstawia dwukrotnie wydrukowany akapit tekstu: w pierwszym akapicie tekst nie był uzasadniony; w drugim akapicie tekst był uzasadniony przez wywołanie funkcji GetTextExtentPoint32 i SetTextJustification.
Tekst i kolor tła
Aplikacje mogą używać funkcji SetTextColor, aby ustawiać kolor tekstu wyświetlanego w obszarze klienta okien, a także kolor tekstu drukowanego na drukarce kolorowej. Aplikacja może użyć funkcji SetBkColor, aby ustawić kolor, który pojawia się za każdym znakiem, oraz funkcji SetBkMode, aby określić, jak system powinien mieszać wybrany kolor tła z bieżącym kolorem lub kolorami na ekranie.
Domyślny kolor tekstu dla kontekstu urządzenia wyświetlającego to czarny; domyślny kolor tła to biały; a domyślnym trybem tła jest KRYJĄCY. Aplikacja może pobrać bieżący kolor tekstu dla kontekstu urządzenia, wywołując funkcję GetTextColor. Aplikacja może pobrać bieżący kolor tła kontekstu urządzenia, wywołując funkcję GetBkColor i bieżący tryb tła, wywołując funkcję GetBkMode.