Freigeben über


IPrintCoreHelper::SetFontSubstitution-Methode (prcomoem.h)

Die IPrintCoreHelper::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

IPrintCoreHelper::SetFontSubstitution 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. 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::GetFontSubstitution