Функция AddFontResourceA (wingdi.h)
Функция AddFontResource добавляет ресурс шрифта из указанного файла в системную таблицу шрифтов. Впоследствии шрифт можно использовать для вывода текста любым приложением.
Чтобы пометить шрифт как закрытый или не перечислимый, используйте функцию AddFontResourceEx.
Синтаксис
int AddFontResourceA(
[in] LPCSTR unnamedParam1
);
Параметры
[in] unnamedParam1
Указатель на строку символов, завершающую значение NULL, содержащую допустимое имя файла шрифта. Этот параметр может указать любой из следующих файлов.
Чтобы добавить шрифт, сведения которого исходят из нескольких файлов ресурсов, lpszFileName указывать на строку с именами файлов, разделенными "|", например abcxxxx.pfm | abcxxx.pfb.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение указывает количество добавленных шрифтов.
Если функция завершается ошибкой, возвращаемое значение равно нулю. Дополнительные сведения об ошибке недоступны.
Замечания
Любое приложение, которое добавляет или удаляет шрифты из системной таблицы шрифтов, должно уведомлять другие окна изменений, отправляя WM_FONTCHANGE сообщение всем окнам верхнего уровня в операционной системе. Приложение должно отправить это сообщение, вызвав функцию SendMessage
Если приложению больше не нужен ресурс шрифта, загруженный путем вызова функции AddFontResource, он должен удалить этот ресурс, вызвав функцию RemoveFontResource.
Эта функция устанавливает шрифт только для текущего сеанса. При перезапуске системы шрифт не будет присутствовать. Чтобы установить шрифт даже после перезапуска системы, в реестре должен быть указан шрифт.
Шрифт, указанный в реестре и установленный в расположении, отличном от папки %windir%\fonts\, не может быть изменен, удален или заменен до тех пор, пока он загружен в любом сеансе. Чтобы изменить один из этих шрифтов, сначала его необходимо удалить, вызвав RemoveFontResource, удален из реестра шрифтов (HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts), а система перезапущена. После перезапуска системы шрифт больше не будет загружен и может быть изменен.
Заметка
Заголовок wingdi.h определяет AddFontResource как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | wingdi.h (включая Windows.h) |
библиотеки |
Gdi32.lib |
DLL | Gdi32.dll |
См. также
шрифтов и текста