Поделиться через


Функция TTEmbedFont (t2embapi.h)

Создает структуру шрифта, содержащую подмножество шрифта с расширенными символами (16 бит). Сведения о шрифте предоставляет текущий шрифт контекста устройства (HDC).

Эта функция передает данные в определяемую клиентом процедуру обратного вызова для вставки в поток документов.

Синтаксис

LONG TTEmbedFont(
  [in]           HDC            hDC,
  [in]           ULONG          ulFlags,
  [in]           ULONG          ulCharSet,
  [out]          ULONG          *pulPrivStatus,
  [out]          ULONG          *pulStatus,
                 WRITEEMBEDPROC lpfnWriteToStream,
  [in]           LPVOID         lpvWriteStream,
  [in]           USHORT         *pusCharCodeSet,
  [in]           USHORT         usCharCodeCount,
  [in]           USHORT         usLanguage,
  [in, optional] TTEMBEDINFO    *pTTEmbedInfo
);

Параметры

[in] hDC

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

[in] ulFlags

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

Значение Значение
TTEMBED_EMBEDEUDC
Включите связанные данные файла шрифта EUDC в структуру шрифта.
TTEMBED_RAW
Возвращает структуру шрифта, содержащую полную кодировку без сжатия. Это поведение функции по умолчанию.
TTEMBED_SUBSET
Возвращает подмножество шрифта, содержащего только глифы, указанные параметром pusCharCodeSet или pulCharCodeSet . Эти коды символов должны быть обозначены как 16-разрядные символы или символы UCS-4 в соответствии с параметром .
TTEMBED_TTCOMPRESSED
Возвращает сжатую структуру шрифта.

[in] ulCharSet

Флаг, указывающий набор символов внедренного шрифта. Этот флаг может иметь одно из следующих значений.

Значение Значение
CHARSET_UNICODE
Кодировка Юникода, требующая 16-битового кодирования символов.
CHARSET_SYMBOL
Набор символов, требующий 16-битового кодирования символов.

[out] pulPrivStatus

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

Значение Значение
EMBED_PREVIEWPRINT
Предварительный просмотр и внедрение печати.
EMBED_EDITABLE
Редактируемое внедрение.
EMBED_INSTALLABLE
Устанавливаемое внедрение.
EMBED_NOEMBEDDING
Внедрение ограниченной лицензии.

[out] pulStatus

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

lpfnWriteToStream

Указатель на определяемую клиентом функцию обратного вызова, которая записывает структуру шрифта в поток документа. См . раздел WRITEEMBEDPROC.

[in] lpvWriteStream

Маркер для представления выходного потока.

[in] pusCharCodeSet

Указатель на буфер, содержащий необязательные коды символов Юникода для подмножества. Это поле используется только для подмножества шрифта и игнорируется, если в поле ulFlags не указано TTEMBED_SUBSET.

[in] usCharCodeCount

Количество символов в списке символов, указанных pusCharCodeSet. Это поле используется только для подмножества шрифта и игнорируется, если в поле ulFlags не указано TTEMBED_SUBSET.

[in] usLanguage

Указывает язык в таблице имен, который следует сохранить при подмножестве. Задайте значение 0, чтобы сохранить все языки. Это поле используется только для подмножества шрифта и игнорируется, если в поле ulFlags не указано TTEMBED_SUBSET.

[in, optional] pTTEmbedInfo

Указатель на структуру TTEMBEDINFO , содержащую URL-адреса, с которых можно ссылаться на объект внедренного шрифта. Если значение pTTEmbedInfo равно NULL, URL-адреса не будут добавлены во внедренный объект шрифта, а проверка URL-адреса не будет выполняться при вызове клиентом TTLoadEmbeddedFont.

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

Если внедрение прошло успешно, возвращает E_NONE.

Структура шрифта включается в поток документа клиентом. Задано значение pulPrivStatus , указывающее привилегии внедрения шрифта; И pulStatus настроены для предоставления результатов операции внедрения.

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

Комментарии

Клиенты отвечают за определение и указание кодировки шрифта.

Сведения о внедрении символов UCS-4 см. в разделе TTEmbedFontEx. Сведения о внедрении символов шрифта из файла см. в разделе TTEmbedFontFromFileA.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header t2embapi.h
Библиотека T2embed.lib
DLL T2embed.dll

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

TTEMBEDINFO

TTEmbedFontEx

TTEmbedFontFromFileA

TTLoadEmbeddedFont