Функция SetTextAlign


Функция SetTextAlign устанавливает флажки выравнивания текста для заданного контекста устройства.

Синтаксис

UINT SetTextAlign(
  HDC hdc,     // дескриптор DC
  UINT fMode   // параметры выравнивания текста 
);

Параметры

hdc
[in] Дескриптор контекста устройства.
fMode

Устанавливает выравнивание текста при помощи использования значений маски в нижеследующем списке. Только один флажок может выбираться из тех, которые влияют на на горизонтальное и вертикальное выравнивание. Кроме того, может выбираться только один из двух флажков, которые видоизменяют текущую позицию.

Значение Предназначение
TA_BASELINE Опорная точка находится на базовой линии текста.
TA_BOTTOM Опорная точка на нижней кромке рабочего прямоугольника.
TA_TOP Опорная точка на верхней кромке рабочего прямоугольника.
TA_CENTER Опорная точка выравнивается горизонтально по центру рабочего прямоугольника.
TA_LEFT Опорная точка находится на левой кромке рабочего прямоугольника.
TA_RIGHT Опорная точка находится на правой кромке рабочего прямоугольника.
TA_RTLREADING Редакция Windows на языках Ближнего Востока: Текст размечается для порядка чтения справа налево , в противоположность порядку чтения по умолчанию слева направо. Это применяется только тогда, когда шрифт, выбранный в контекст устройства предназначен или для Еврейского или для Арабского языка.
TA_NOUPDATECP Текущая позиция не модифицируется после каждого вызова вывода текста. Опорная точка передается в функцию вывода текста.
TA_UPDATECP Текущая позиция модифицируется после каждого вызова вывода текста. Текущая позиция используется как опорная точка.
 

Когда текущий шрифт имеет вертикальную заданную по умолчанию базовую линию (такой как Kanji), вместо TA_BASELINE и TA_CENTER должны быть использованы нижеследующие значения.

Значение Предназначение
VTA_BASELINE Опорная точка находится на базовой линии текста.
VTA_CENTER Опорная точка выравнивается вертикально по центру рабочего прямоугольника.

Значения по умолчанию - TA_LEFT, TA_TOP и TA_NOUPDATECP.

Возвращаемые значения

Если функция завершается успешно, возвращаемое значение - предшествующая настройка выравнивания текста.

Если функция завершается с ошибкой, возвращаемое значение - GDI_ERROR.

Windows NT/2000/XP: Чтобы получить дополнительную информацию об ошибке, вызовите GetLastError .

Замечания

Функции TextOut и ExtTextOut используют флажки выравнивания текста, чтобы расположить строку текста на экране или другом устройстве. Флажки устанавливают соотношение между опорной точкой и прямоугольником, который ограничивает текст. Опорная точка является или текущей позицией, или точкой переданной в функцию вывода текста.

Прямоугольник, который ограничивает текст, сформирован символьными знакоместами в текстовой строке.

Самый лучший способ получить выровненный по левой границе текст должен использоваться так

SetTextAlign (hdc, GetTextAlign(hdc) & (~TA_CENTER))

– или –

SetTextAlign (hdc,TA_LEFT | <other flags>)

Для этой цели вы можете также использовать SetTextAlign (hdc, TA_LEFT), но этот способ теряет любые вертикальные или справа налево параметры настройки.

Обратите внимание! на то, что Вам не следует  использовать функцию SetTextAlign с флажком TA_UPDATECP, когда Вы используете функцию ScriptStringOut, потому что выбранный текст не формирует правильного изображения . Если Вы должны использовать этот флажок, то можете не устанавливать и сбрасывать это по мере необходимости, чтобы избежать проблемы.

Код примера

Пример смотри в статье Параметры выравнивания текста.

Смотри также

Обзор шрифты и текст , Функции, используемые шрифтами и текстом , ExtTextOut, GetTextAlign, ScriptStringOut, TextOut

Размещение и совместимость SetTextAlign

Windows. NET Server

Да

Windows XP

Да

Windows 2000

Да

Windows NT

Да версии 3.1 и выше

Windows Me

Да

Windows 98

Да

Windows 95

Да

Используемая библиотека

Gdi32.lib

Заголовочный файл

 

- объявлено в

Wingdi.h

- включено в

Windows.h

Unicode

Нет

Замечания по платформе

Не имеется

 

Назад в оглавление
На главную страницу
На оглавление справки

Hosted by uCoz