Функция GetCharABCWidthsI извлекает ширину, в логических единицах измерения, следующих друг за другом индексов глифов в заданном диапазоне текущего шрифта TrueType. Эта функция завершается успешно только со шрифтами TrueType.
Синтаксис
BOOL GetCharABCWidthsI( HDC hdc, // дескриптор DC UINT giFirst, // индекс первого глифа в ряду UINT cgi, // количество индексов глифов в ряду LPWORD pgi, // массив индексов глифов LPABC lpabc // массив ширины символов); |
[out] Указатель на массив структур ABC, которые принимает ширины символов, в логических единицах измерения. Этот массив должен содержать, по крайней мере, столько же структур ABC, сколько имеется индексов глифов, заданных параметром cgi .
Если функция завершается успешно, возвращаемое значение - не нуль.
Если функция завершается с ошибкой, величина возвращаемого значения - ноль.
Windows NT/2000/XP: Чтобы получит дополнительные информацию об ошибке, вызовите функцию GetLastError.
Растрирующий процессор шрифта формата TrueType обеспечивает интервал ABC между знаками после того, как конкретный кегль шрифта в пунктах был выбран. А- интервал - это расстояние, добавляемое к текущей позиции перед размещением глифа. В- интервал - это ширина рисованной части глифа. C- интервал - это расстояние, добавляемое к текущей позиции, чтобы обеспечить незаполненное пространство справа от глифа. Полная ширина, занимаемая знаком определяется как A+B+C.
Когда функция GetCharABCWidthsI извлекает отрицательное значение А или C ширины символа, значит этот символ включает в себя нависающие элементы или выступы.
Чтобы преобразовывать ширину АВС в расчетные единицы измерения шрифта, приложение должно использовать значение, сохраненное в члене otmEMSquare структуры OUTLINETEXTMETRIC. Это значение может извлекаться при помощи вызова функции GetOutlineTextMetrics.
Ширина символов ABC по умолчанию используется для символов, которые находятся за пределами ряда текущего выбранного шрифта.
Чтобы извлечь ширину индексов глифов в не TrueType шрифте, приложение должно использовать функцию GetCharWidthI.
Обзор шрифты и текст, Функции, используемые шрифтами и текстом, GetCharWidth, GetOutlineTextMetrics, OUTLINETEXTMETRIC, ABC
Размещение и совместимость GetCharABCWidthsI |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Нет |
Windows Me |
Нет |
Windows 98 |
Нет |
Windows 95 |
Нет |
Используемая библиотека |
Gdi32.lib |
Заголовочный файл |
|
- объявлено в |
Wingdi.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |