IPrintCoreHelper::GetFontSubstitution-Methode (prcomoem.h)

Die IPrintCoreHelper::GetFontSubstitution-Methode gibt an, welche Geräteschriftart ggf. als Ersetzungsschriftart für eine angegebene TrueType-Schriftart verwendet wird.

Syntax

HRESULT GetFontSubstitution(
  [in]  IN PCWSTR  pszTrueTypeFontName,
  [out] OUT PCWSTR *ppszDevFontName
);

Parameter

[in] pszTrueTypeFontName

Ein Zeiger auf eine Unicode-Zeichenfolge mit Null-Termin, die den Namen einer TrueType-Schriftart enthält.

[out] ppszDevFontName

Ein Zeiger auf eine Variable, die die Adresse einer unicode-Zeichenfolge mit NULL-Beendigung empfängt. Diese Zeichenfolge enthält den Namen der Geräteschriftart, die anstelle der im Parameter pszFontName angegebenen TrueType-Schriftart verwendet wird. Wenn keine Geräteschriftart vorhanden ist, die als Ersatz für die angegebene TrueType-Schriftart dienen kann, wird dieser Parameter auf NULL festgelegt.

Rückgabewert

IPrintCoreHelper::GetFontSubstitution sollte einen der folgenden Werte zurückgeben:

Rückgabecode BESCHREIBUNG
S_OK Die -Methode liest die Option für das angegebene Feature.
E_FAIL Die angeforderte Schriftart ist nicht vorhanden oder war keine TrueType-Schriftart.
E_INVALIDARG Mindestens eines der Argumente ist ungültig.
E_OUTOFMEMORY Der Kerntreiber konnte die Anforderung nicht verarbeiten, da nicht genügend Arbeitsspeicher vorhanden war.
E_UNEXPECTED oder andere Rückgabecodes, die nicht an anderer Stelle in dieser Tabelle aufgeführt sind Der Kerntreiber scheint sich in einem ungültigen Zustand zu befinden. Der Aufrufer sollte einen Fehlercode zurückgeben.

Hinweise

Wenn eine Anwendung versucht, Text zu drucken, der die im PszTrueTypeFontName-Parameter angegebene TrueType-Schriftart verwendet, wird dieser Text stattdessen in der im ppszDevFontName-Parameter angegebenen Geräteschriftart gedruckt. Der Name der Geräteschriftart muss der einer gültigen, installierten Schriftart sein.

Eine Schriftart wird durch den Namen der Schriftart identifiziert, der im Element lfFaceName der LOGFONT-Struktur angezeigt wird.

Um eine Liste der verfügbaren Schriftarten zu erhalten, erstellen Sie einen Informationskontext für den aktuellen Drucker, und rufen Sie SetGraphicsMode(hIC, GM_ADVANCED) auf. Listen Sie dann Geräteschriftarten mithilfe eines Aufrufs von EnumFontFamilies auf. Der Rückrufparameter (siehe EnumFontFamProc) von EnumFontFamilies sollte nach Geräteschriftarten filtern, indem ein Zähler für jede Schriftart erhöht wird, für die das bitweise AND-Ergebnis (FontType & TRUETYPE_FONTTYPE) ungleich null ist.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile prcomoem.h (include Prcomoem.h)

Weitere Informationen

IPrintCoreHelper

IPrintCoreHelper::SetFontSubstitution