Метод IPrintCoreHelper::GetFontSubstitution (prcomoem.h)
Метод IPrintCoreHelper::GetFontSubstitution указывает, какой шрифт устройства, если он есть, используется в качестве шрифта подстановки для указанного шрифта TrueType.
Синтаксис
HRESULT GetFontSubstitution(
[in] IN PCWSTR pszTrueTypeFontName,
[out] OUT PCWSTR *ppszDevFontName
);
Параметры
[in] pszTrueTypeFontName
Указатель на строку Юникода, завершающуюся значением NULL, которая содержит имя шрифта TrueType.
[out] ppszDevFontName
Указатель на переменную, которая получает адрес строки Юникода, заканчивающейся null. Эта строка содержит имя шрифта устройства, который будет использоваться вместо шрифта TrueType, указанного в параметре pszFontName . Если нет шрифта устройства, который может служить заменой указанного шрифта TrueType, этот параметр имеет значение NULL.
Возвращаемое значение
IPrintCoreHelper::GetFontSubstitution должен возвращать одно из следующих значений:
Код возврата | Описание |
---|---|
S_OK | Метод считывает параметр для указанного компонента. |
E_FAIL | Запрошенный шрифт не существует или не является шрифтом TrueType. |
E_INVALIDARG | Один или несколько аргументов являются недопустимыми. |
E_OUTOFMEMORY | Основной драйвер не смог обслужить запрос из-за нехватки памяти. |
E_UNEXPECTED или другие коды возврата, не перечисленные в других местах в этой таблице | Основной драйвер, кажется, в недопустимом состоянии. Вызывающий объект должен вернуть код сбоя. |
Комментарии
Если приложение пытается напечатать текст, использующий шрифт TrueType, указанный в параметре pszTrueTypeFontName , текст будет напечатан шрифтом устройства, указанным в параметре ppszDevFontName . Имя шрифта устройства должно быть допустимым, установленным шрифтом.
Шрифт идентифицируется по его названию шрифта, которое отображается в элементе lfFaceName структуры LOGFONT .
Чтобы получить список доступных шрифтов, создайте информационный контекст для текущего принтера и вызовите Метод SetGraphicsMode(hIC, GM_ADVANCED). Затем перечислите шрифты устройства с помощью вызова EnumFontFamilies. Параметр обратного вызова (см . EnumFontFamProc) enumFontFamilies должен фильтровать шрифты устройства путем приращения счетчика для каждого шрифта, для которого побитовый результат AND (FontType & TRUETYPE_FONTTYPE) является ненулевым.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | prcomoem.h (включая Prcomoem.h) |