Méthode IPrintCoreHelperPS ::GetFontSubstitution (prcomoem.h)
La méthode IPrintCoreHelperPS ::GetFontSubstitution indique quelle police d’appareil, le cas échéant, est utilisée comme police de substitution pour une police TrueType spécifiée.
Syntaxe
HRESULT GetFontSubstitution(
[in] IN PCWSTR pszTrueTypeFontName,
[out] OUT PCWSTR *ppszDevFontName
);
Paramètres
[in] pszTrueTypeFontName
Pointeur vers une chaîne Unicode terminée par un caractère Null qui contient le nom d’une police TrueType.
[out] ppszDevFontName
Pointeur vers une variable qui reçoit l’adresse d’une chaîne Unicode terminée par null. Cette chaîne contient le nom de la police d’appareil qui sera utilisée à la place de la police TrueType spécifiée dans le paramètre pszFontName . S’il n’existe aucune police d’appareil pouvant remplacer la police TrueType spécifiée, ce paramètre est défini sur NULL.
Valeur retournée
IPrintCoreHelperPS ::GetFontSubstitution doit retourner l’une des valeurs suivantes :
Code de retour | Description |
---|---|
S_OK | La méthode a lu l’option pour la fonctionnalité spécifiée. |
E_FAIL | La police demandée n’existe pas ou n’est pas une police TrueType. |
E_INVALIDARG | Un ou plusieurs arguments ne sont pas valides. |
E_OUTOFMEMORY | Le pilote principal n’a pas pu traiter la demande, car la mémoire était insuffisante. |
E_UNEXPECTED ou d’autres codes de retour non répertoriés ici | Le pilote principal semble être dans un état non valide. L’appelant doit retourner un code d’échec. |
Remarques
Si une application tente d’imprimer du texte qui utilise la police TrueType spécifiée dans le paramètre pszTrueTypeFontName , ce texte est imprimé à la place dans la police d’appareil spécifiée dans le paramètre ppszDevFontName . Le nom de la police de l’appareil doit être celui d’une police installée valide.
Une police est identifiée par son nom de face de police, qui apparaît dans le membre lfFaceName de la structure LOGFONT .
Pour obtenir la liste des polices disponibles, créez un contexte d’informations pour l’imprimante actuelle et appelez SetGraphicsMode(hIC, GM_ADVANCED). Énumérez ensuite les polices d’appareil au moyen d’un appel à EnumFontFamilies. Le paramètre de rappel (voir EnumFontFamProc) de EnumFontFamilies doit filtrer les polices d’appareil en incrémentant un compteur pour chaque police pour laquelle le résultat AND au niveau du bit (FontType & TRUETYPE_FONTTYPE) est différent de zéro.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | prcomoem.h (include Prcomoem.h) |