Шаг 801 - CDC::SetTextJustification

int SetTextJustification( int nBreakExtra, int nBreakCount );

Возвращаемое значение
Один если функция успешна, иначе 0.

Параметры
nBreakExtra
Определяет общее дополнительное пространство, которое будет добавлено к строке текста (в логических модулях). Если текущий режим отображения - не MM_TEXT, значение, данное этим параметром преобразовано в текущий режим отображения и округлено к самому близкому модулю устройства.
nBreakCount
Определяет число символов прерывания в строке.

Замечания
Добавляет пробел к символам прерывания в строке. Прикладная программа может использовать GetTextMetrics функции , чтобы получить символ прерывания шрифта.
После того, как SetTextJustification функция вызвана, обращение к функции текстового вывода (типа TextOut) распределяет определенное дополнительное пространство равномерно среди определенного числа символов прерывания. Символ прерывания - обычно пробел (ASCII 32), но может быть определен шрифтом как некоторый другой символ.
Функция GetTextExtent обычно используется с SetTextJustification. GetTextExtent вычисляет ширину данной строки перед выравниванием. Прикладная программа может определять сколько пробела определять в nBreakExtra параметре, вычитая значение, возвращенное GetTextExtent из ширины строки после выравнивания.
Функция SetTextJustification может использоваться, чтобы выровнять строку, которая содержит различные шрифты. В этом случае, строка должна быть создана постепенно, выравнивая и записывая каждую последовательность отдельно.
Добавляет пробел к символам прерывания в строке. Прикладная программа может использовать GetTextMetrics функции , чтобы получить символ прерывания шрифта.
После того, как SetTextJustification функция вызвана, обращение к функции текстового вывода (типа TextOut) распределяет определенное дополнительное пространство равномерно среди определенного числа символов прерывания. Символ прерывания - обычно пробел (ASCII 32), но может быть определен шрифтом как некоторый другой символ.
Потому что округление может вызвать ошибку в течение выравнивания, система хранит переменную ошибки, которая определяет текущую ошибку. При выравнивании линии, которая содержит несколько групп символов GetTextExtent автоматически использует эту переменную ошибки, когда она вычисляет протяженность следующих групп. Это позволяет функции текстового вывода избежать ошибок в новой группе.
После того, как каждая строка была выровнена, переменная ошибки должна быть очищена, чтобы игнорировать ее в следующей строке. Для этого вызываться SetTextJustification с nBreakExtra к 0.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 5.02.2002