Partager via


MÉTHODE IDWriteFontFace1 ::GetKerningPairAdjustments (dwrite_1.h)

Récupère les ajustements de paire de crénage à partir de la table de kern de la police.

Syntaxe

HRESULT GetKerningPairAdjustments(
        UINT32       glyphCount,
  [in]  UINT16 const *glyphIndices,
  [out] INT32        *glyphAdvanceAdjustments
);

Paramètres

glyphCount

Type : UINT32

Nombre de glyphes à récupérer.

[in] glyphIndices

Type : const UINT16*

Tableau d’ID de glyphe pour lequel récupérer les ajustements.

[out] glyphAdvanceAdjustments

Type : INT32*

Avances, retournées dans les unités de conception de police, pour chaque glyphe. Le dernier réglage du glyphe est égal à zéro.

Valeur retournée

Type : HRESULT

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

GetKerningPairAdjustments n’est pas un remplacement direct de GetKerningPairs basé sur des caractères de GDI, mais il remplit le même rôle, sans que le client n’a besoin de les mettre en cache localement. GetKerningPairAdjustments utilise également directement les id de glyphes plutôt que les caractères UCS-2 (comment la table à kern les stocke réellement), ce qui évite l’effondrement et l’ambiguïté des glyphes, comme le tiret et le trait d’union, ou l’espace et l’espace non cassant.

Les polices plus récentes peuvent avoir uniquement un crénage GPOS au lieu du crénage de table de paire hérité. Ces polices, comme Gabriola, ne retournent que 0 pour les ajustements. GetKerningPairAdjustments ne virtualise pas et n’aplatit pas ces entrées GPOS en paires de crénage.

Vous pouvez bénéficier d’un avantage en matière de performances en appelant IDWriteFontFace1 ::HasKerningPairs pour déterminer si vous devez appeler GetKerningPairAdjustments. Si vous avez précédemment appelé IDWriteFontFace1 ::HasKerningPairs et qu’il a retourné FALSE, vous pouvez éviter d’appeler GetKerningPairAdjustments , car la police n’a pas d’entrées de table de paire de crénage. Autrement dit, dans cette situation, un appel à GetKerningPairAdjustments serait un non-op.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 et mise à jour de plateforme pour Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête dwrite_1.h
Bibliothèque Dwrite_1.lib
DLL Dwrite_1.dll

Voir aussi

IDWriteFontFace1

IDWriteFontFace1 ::HasKerningPairs