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) |