IPrintCoreHelperPS::SetFontSubstitution-Methode (prcomoem.h)

Die IPrintCoreHelperPS::SetFontSubstitution-Methode gibt die Geräteschriftart an, die anstelle einer bestimmten TrueType-Schriftart gedruckt werden soll.

Syntax

HRESULT SetFontSubstitution(
  [in] IN PCWSTR pszTrueTypeFontName,
  [in] IN PCWSTR pszDevFontName
);

Parameter

[in] pszTrueTypeFontName

Ein Zeiger auf eine unicode-Zeichenfolge mit Null-Termin, die einen gültigen TrueType-Schriftartnamen enthält. Dieser Parameter darf nicht NULL sein.

[in] pszDevFontName

Ein Zeiger auf eine Unicode-Zeichenfolge, die null endet und den Namen der Geräteschriftart enthält.

Rückgabewert

IPrintCoreHelperPS::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 hier nicht aufgeführt sind
Der Kerntreiber scheint sich in einem ungültigen Zustand zu befinden. Der Aufrufer sollte einen Fehlercode zurückgeben.

Hinweise

Das Festlegen einer Geräteschriftart, die anstelle einer angegebenen TrueType-Schriftart verwendet werden soll, kann nur während der Sitzung der Geräteeigenschaftenblätter und nur erfolgen, wenn der vollständige Austausch der Benutzeroberfläche aktiviert ist. Die Schriftart, die durch den PszTrueTypeFontName-Parameter dargestellt wird, muss eine gültige TrueType-Schriftart sein und auf dem Drucker installiert sein. Die Geräteschriftart, die durch den PszDevFontName-Parameter dargestellt wird, muss eine gültige Schriftart für diesen Drucker sein.

Wenn in dieser Warteschlange bereits eine Ersetzungszuordnung für die angegebene TrueType-Schriftart vorhanden ist, ersetzt die SetFontSubstitution-Methode die Zuordnung im Hintergrund. Um eine Ersetzungszuordnung zu entfernen, rufen Sie diese Methode mit dem in pszTrueTypeFontName angegebenen TrueType-Schriftartnamen und dem in pszDevFontName angegebenen NULL auf.

Um eine Liste gültiger Geräteschriftarten zu erhalten, erstellen Sie einen Informationskontext für den aktuellen Drucker, und rufen Sie SetGraphicsMode(hIC, GM_ADVANCED) auf. Enumerationen Sie dann Geräteschriftarten, indem Sie EnumFontFamilies aufrufen. Der Rückrufparameter (siehe EnumFontFamProc in der Microsoft Windows SDK-Dokumentation) von EnumFontFamilies sollte nach Geräteschriftarten filtern, indem er einen Zähler für jede Schriftart erhöht, für die das bitweise AND-Ergebnis (FontType & TRUETYPE_FONTTYPE) ungleich null ist. Die Funktionen SetGraphicsMode, EnumFontFamilies und EnumFontFamProc werden in der Windows SDK-Dokumentation beschrieben.

Anforderungen

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

Weitere Informationen

IPrintCoreHelperPS

IPrintCoreHelperPS::GetFontSubstitution