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