Freigeben über


IPrintCoreHelperUni::GetFontSubstitution-Methode (prcomoem.h)

IPrintCoreHelperUni::GetFontSubstitution Methode gibt an, welche Geräteschriftart (falls vorhanden) als Ersatzschriftart 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 mit Null beendete Unicode-Zeichenfolge, die den Namen einer TrueType-Schriftart enthält.

[out] ppszDevFontName

Ein Zeiger auf eine Variable, die die Adresse einer mit Null beendeten Unicode-Zeichenfolge empfängt. Diese Zeichenfolge enthält den Namen der Geräteschriftart, die anstelle der im pszFontName Parameter 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

IPrintCoreHelperUni::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 ein Argument ist ungültig.
E_OUTOFMEMORY Der Kerntreiber konnte die Anforderung nicht bedienen, da nicht genügend Arbeitsspeicher vorhanden war.
E_UNEXPECTED oder andere hier nicht aufgeführte Rückgabecodes Der Kerntreiber scheint in einem ungültigen Zustand zu sein. Der Aufrufer sollte einen Fehlercode zurückgeben.

Bemerkungen

Wenn eine Anwendung versucht, Text zu drucken, der die in der 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 die einer gültigen, installierten Schriftart sein.

Eine Schriftart wird durch ihren Schriftartnamen identifiziert, der im lfFaceName Mitglied der LOGFONT- Struktur angezeigt wird.

Um eine Liste der verfügbaren Schriftarten abzurufen, erstellen Sie einen Informationskontext für den aktuellen Drucker, und rufen Sie SetGraphicsMode-(hIC, GM_ADVANCED)auf. Enumerieren Sie dann Geräteschriftarten mithilfe eines Aufrufs von EnumFontFamilies. 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
Header- prcomoem.h (einschließlich Prcomoem.h)

Siehe auch

IPrintCoreHelperUni

IPrintCoreHelperUni::SetFontSubstitution