Печать и вывод текста, страница 8

Синтаксис

BOOL GetCharWidth32( HDC hDC, UINT uFirstChar, UINT uLastChar, LPINT IpBuffer )

Параметры

hDC

HDC. Контекст устройства, для которого выбран шрифт.

uFirstChar

UINT. Первый символ в диапазоне символов.

uLastChar

UINT. Последний символ в диапазоне символов.

IpBuffer

LPINT. Указатель на буфер, достаточно большой для того, чтобы в неи! поместились значения ширины символов.

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

BOOL. В случае успешного выполнения возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE.

Включаемый файл

wingdi.h

См. также

GetCharABCWidths, GetCharWidthFloat

Пример

В следующем примере функция GetCharWidth32 применяется для выборки значений ширины символов 'W и 'X1 в предусмотренном по умолчанию шрифте окна, когда пользователь выбирает пункт меню Test!. Эти значения ширины отображаются на экране, как показано на рис. 14.5.

GetCharWidthFloat                      Windows 98   • Windows 2000

Описание

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

Синтаксис

BOOL GetCharWidthFIoat( HDC hDC, UINT uFirstChar, UINT uLastChar, PFLOAT IpBuffer )

Параметры   : НОС

HDC. Контекст устройства, для которого выбран шрифт.

uFirstChar

UINT. Первый символ в диапазоне символов.

uLastChar

UINT. Последний символ в диапазоне символов.

IpBuffer

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

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

BOOL. В случае успешного выполнения возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE.

Включаемый файл

wingdi.h

См. также

GetCharABCWidths, GetCharWidth32

GetGlyphOutline                         Windows 98   • Windows 20001

Описание

Функция   GetGlyphOutline позволяет определить контур или растровой изображение символа в текущем шрифте. Эта функция применяется толь*

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

Синтаксис

DWORD GetGlyphOutline( HDC hDC, UINT uChar, UINT uFormat, LPGLYPHMETRICS Ipgm, DWORD cbBuffer, LPVOID IpvBuffer, CONST MAT2* Ipmat2 )

Параметры

hDC

HDC. Контекст устройства, для которого выбран шрифт.

uChar

UINT. Символ, для которого должны быть возвращены данные.

uFormat

UINT. Формат, в котором функция возвращает данные. Этот параметр может иметь одно из значений, перечисленных в табл. 14.22.

Таблица 14.22. Значения параметра uFormat функции GetGlyphOutline

Значение

Описание

GGO_BEZIER

Возвратить данные кривой в виде кубического сплайна Безъе.

GGO_BITMAP

Возвратить растровое изображение глифа.

GGO_GLYPH_INDEX

Возвратить интервалы ABC символа для глифа.

GGO_GRAY2_BITMAP

Возвратить растровое изображение глифа, которое содержит 4 уровня серого.

GGO_GRAY4_BITMAP

Возвратить растровое изображение глифа, которое содержит 16 уровней серого.

GGO_GRAY8_BITMAP

Возвратить растровое изображение глифа, которое содержит 255 уровней серого.

GGO_METRICS

Возвратить только структуру GLYPHMETRICS, указанную параметром Ipgm. Другие параметры с указанием буферов игнорируются.

GGO_NATIVE

Возвратить точки данных кривой в собственном формате растрирующего процессора, с использованием единиц длины по проекту шрифта. Любое преобразование, указанное в параметре \pmat2, игнорируется.

GGO_UNHINTED

Возвратить непреобразованные контуры.

Ipgm

LPGLYPHMETRICS. Указатель на структуру GLYPHMETRICS, которая принимает данные о размещении глифа в ячейке символа. Определение структуры GLYPHMETRICS приведено ниже.

cbBuffer

DWORD. Размер буфера, в который функция должна скопировать информацию о контурном символе. Если этот параметр установлен равным 0, функция возвращает необходимый размер буфера.

IpvBuffer

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

Ipmat2

CONST МАТ2*. Указатель на структуру МАТ2, которая определяет матрицу преобразования для символа. Для объекта, идентичного исходному объекту, значение элемента еМП единичной матрицы равно 1, элемента