Partager via


Fonction ScriptCPtoX (usp10.h)

Génère le décalage x de l’extrémité gauche ou du bord d’avant d’une exécution vers le bord de début ou de fin d’un cluster de caractères logiques.

Syntaxe

HRESULT ScriptCPtoX(
  [in]  int                   iCP,
  [in]  BOOL                  fTrailing,
  [in]  int                   cChars,
  [in]  int                   cGlyphs,
  [in]  const WORD            *pwLogClust,
  [in]  const SCRIPT_VISATTR  *psva,
  [in]  const int             *piAdvance,
  [in]  const SCRIPT_ANALYSIS *psa,
  [out] int                   *piX
);

Paramètres

[in] iCP

Position de caractère logique dans l’exécution. Ce paramètre correspond au décalage de tout caractère logique dans le cluster.

[in] fTrailing

TRUE pour utiliser le bord de fin du cluster de caractères logiques pour calculer le décalage. Ce paramètre a la valeur FALSE pour utiliser le bord d’avant-plan du cluster de caractères logiques.

[in] cChars

Nombre de caractères dans l’exécution.

[in] cGlyphs

Nombre de glyphes dans l’exécution.

[in] pwLogClust

Pointeur vers les clusters logiques.

[in] psva

Pointeur vers un tableau SCRIPT_VISATTR d’attributs visuels.

[in] piAdvance

Pointeur vers une valeur de largeur avancée.

[in] psa

Pointeur vers une structure SCRIPT_ANALYSIS . Le membre fLogicalOrder spécifie la fin de l’exécution à partir de laquelle mesurer le décalage. Si l’indicateur est défini, le bord d’avant de l’exécution est utilisé. Si l’indicateur n’est pas défini, l’extrémité gauche de l’exécution est utilisée.

[out] piX

Pointeur vers la mémoire tampon dans laquelle la fonction récupère la position x du caret.

Valeur retournée

Retourne 0 en cas de réussite. Cette fonction retourne une valeur HRESULT différente de zéro si elle ne réussit pas. L’application peut tester la valeur de retour avec les macros SUCCEEDED et FAILED .

Remarques

Le bord de début ou de fin du caractère et le bord d’avant d’une exécution dépendent de la direction du texte dans l’exécution.

Pour les scripts dans lesquels la carete est traditionnellement placée au milieu des clusters (par exemple, en arabe et en hébreu), la position x récupérée du carat peut être une position interpolée pour n’importe quel point de code dans la ligne.

Pour les scripts dans lesquels le caret est traditionnellement aligné sur les limites des clusters (par exemple, thaï et indien), la position x est alignée sur le bord demandé du cluster contenant la position de caractère logique indiquée par iCP.

Important À compter de Windows 8 : pour conserver la possibilité de s’exécuter sur Windows 7, un module qui utilise Uniscribe doit spécifier Usp10.lib avant gdi32.lib dans sa liste de bibliothèques.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête usp10.h
Bibliothèque Usp10.lib
DLL Usp10.dll
Composant redistribuable Internet Explorer 5 ou version ultérieure sur Windows Me/98/95

Voir aussi

SCRIPT_ANALYSIS

SCRIPT_VISATTR

ScriptXtoCP

Uniscribe

Fonctions uniscribe