Ширина символов
Приложениям необходимо получить данные ширины символов при выполнении таких задач, как установка строк текста на ширину страницы или столбца. Существует четыре функции, которые приложение может использовать для получения данных ширины символов. Две из этих функций извлекают ширину символов, а две из этих функций извлекают фактические данные ширины символов.
Приложение может использовать функции GetCharWidth32 и функции GetCharWidthFloat для получения расширенной ширины для отдельных символов или символов в строке текста. Ширина перед печатью следующего символа в строке текста должна быть расширена, чем курсор на дисплее видео или на принтере. Функция GetCharWidth32 возвращает расширенную ширину в виде целочисленного значения. Если требуется более высокая точность, приложение может использовать функцию getCharWidthFloat для получения значений дробной ширины.
Приложение может получить фактические данные ширины символов с помощью функций GetCharABCWidths и функции GetCharABCWidthsFloat. Функция GetCharABCWidthsFloat работает со всеми шрифтами. Функция getCharABCWidths работает только с шрифтами TrueType и OpenType. Дополнительные сведения о шрифтах TrueType и OpenType см. в разделе Raster, Vector, TrueType и Шрифты OpenType.
На следующем рисунке показаны три компонента ширины символов:
Интервал — это ширина, добавляемая к текущей позиции перед размещением символа. Интервал B — это ширина самого символа. Интервал C — это пробел справа от символа. Общая ширина заранее определяется вычислением суммы A+B+C. Ячейка символов представляет собой мнимый прямоугольник, который окружает каждый символ или символ в шрифте. Так как символы могут перевесить или подвесить ячейку символов, либо как от добавок A, так и C может быть отрицательным числом.