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


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

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

Синтаксис

int AddFontResourceExA(
  [in] LPCSTR name,
  [in] DWORD  fl,
  [in] PVOID  res
);

Параметры

[in] name

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

Расширение файла Значение
.fon
Файл ресурса шрифта.
.fnt
Необработанный файл шрифта растрового изображения.
.ttf
Необработанный файл TrueType.
.ttc
Коллекция шрифтов TrueType в Восточной Азии.
.fot
Файл ресурса TrueType.
.otf
Шрифт PostScript OpenType.
.mmm
файл ресурса шрифта типа 1 главного типа. Он должен использоваться с файлами .pfm и pfb.
.pfb
Введите 1 файл битов шрифта. Он используется с pfm-файлом.
.pfm
Введите 1 файл метрик шрифта. Он используется с pfb-файлом.
 

Чтобы добавить шрифт, сведения которого исходят из нескольких файлов ресурсов, наведите указатель lpszFileName в строку с именами файлов, разделенными | --например, abcxxxxxx.pfm | abcxxx.pfb.

[in] fl

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

Ценность Значение
FR_PRIVATE
Указывает, что только процесс, который вызывает функцию AddFontResourceEx , может использовать этот шрифт. Если имя шрифта соответствует общедоступному шрифту, будет выбран частный шрифт. После завершения процесса система удаляет все шрифты, установленные процессом с помощью функции AddFontResourceEx .
FR_NOT_ENUM
Указывает, что процесс, включая процесс, который называется функцией AddFontResourceEx, не может перечислять этот шрифт.

[in] res

Скрытный. Должно быть равно нулю.

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

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

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

Замечания

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

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

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

Шрифт, указанный в реестре и установленный в расположении, отличном от папки %windir%\fonts\, не может быть изменен, удален или заменен до тех пор, пока он загружен в любом сеансе. Чтобы изменить один из этих шрифтов, сначала его необходимо удалить, вызвав RemoveFontResource, удален из реестра шрифтов (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts), а система перезапущена. После перезапуска системы шрифт больше не будет загружен и может быть изменен.

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка wingdi.h (включая Windows.h)
библиотеки Gdi32.lib
DLL Gdi32.dll

См. также

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

шрифтов и текста

RemoveFontResourceEx

SendMessage