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


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

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

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

Синтаксис

LONG TTEmbedFontFromFileA(
  [in]           HDC            hDC,
  [in]           LPCSTR         szFontFileName,
  [in]           USHORT         usTTCIndex,
  [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] szFontFileName

Имя файла шрифта и путь для внедрения. Это строка ANSI.

[in] usTTCIndex

Отсчитываемый от нуля индекс в файле шрифтов (TTC), определяющий физический шрифт для внедрения. Если файл содержит один шрифт (например, файл структуры TTF или OTF), этот параметр должен иметь значение 0.

[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

Указатель на буфер, содержащий необязательные коды символов Юникода для подмножества. Это поле используется только для поднабора шрифта и игнорируется, если поле theulFlagsfield не указывает 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 задано для предоставления результатов операции внедрения.

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

Комментарии

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

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

Сведения о внедрении символов Юникода из контекста устройства см. в разделе TTEmbedFont; Сведения о внедрении символов UCS-4 из контекста устройства см. в разделе TTEmbedFontEx.

Требования

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

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

TTEMBEDINFO

TTEmbedFont

TTEmbedFontEx

TTLoadEmbeddedFont