Функция GetCharABCWidthsFloatA (wingdi.h)

Функция GetCharABCWidthsFloat извлекает ширину в логических единицах последовательных символов в указанном диапазоне из текущего шрифта.

Синтаксис

BOOL GetCharABCWidthsFloatA(
  [in]  HDC        hdc,
  [in]  UINT       iFirst,
  [in]  UINT       iLast,
  [out] LPABCFLOAT lpABC
);

Параметры

[in] hdc

Дескриптор контекста устройства.

[in] iFirst

Указывает кодовую точку первого символа в группе последовательных символов, в которой выполняется поиск ширины ABC.

[in] iLast

Задает кодовую точку последнего символа в группе последовательных символов, в которой выполняется поиск ширины ABC. Этот диапазон является инклюзивным. Если указанный последний символ предшествует указанному первому символу, возвращается ошибка.

[out] lpABC

Указатель на массив структур ABCFLOAT , который получает ширину символов в логических единицах.

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

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

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

Комментарии

В отличие от функции GetCharABCWidths , которая возвращает ширину только для шрифтов TrueType, функция GetCharABCWidthsFloat получает ширину для любого шрифта. Ширина, возвращаемая этой функцией, представлена в формате IEEE с плавающей запятой.

Если текущее преобразование "мир в устройство" не определено, возвращаемые значения ширины могут быть не целочисленными значениями, даже если соответствующие значения в пространстве устройства являются целыми числами.

Интервал — это расстояние, добавленное к текущему положению перед размещением глифа. B-интервал — это ширина черной части глифа. Интервал C — это расстояние, добавленное к текущему положению для предоставления пробела справа от глифа. Общая расширенная ширина задается с помощью A+B+C.

Пробелы ABC измеряются вдоль базовой строки символов выбранного шрифта.

Ширина ABC символа по умолчанию используется для символов за пределами диапазона выбранного шрифта.

Примечание

Заголовок wingdi.h определяет GetCharABCWidthsFloat в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Gdi32.lib
DLL Gdi32.dll

См. также раздел

ABCFLOAT

Функции шрифта и текста

Общие сведения о шрифтах и тексте

GetCharABCWidths

GetCharWidth

GetCharWidthFloat